Busco alguna instrucción o bucle (no se me ocurre como montarlo) que haga lo mismo que insertar una fila (si se cumple una condición sobre el valor de una celda o posición en un array) y que copia lo de esa fila, pero sin pasar por excel.
Es decir, tengo una macro que funciona en excel, pero quiero evitar excribir nada, y manejarme sólo con arrays, y una vez completado ya escirbirlo de golpe. El probema está en que hay una sentencia que en función de una condición duplica esa línea, y sigue escribiendo, y eso no sé como hacerlo sin escribirlo en excel. El trozo en cuestión sería algo así:
If Cells(18 + fila, 1 + orden + 1) <> Nin Then
Cells(17 + fila, 1 + j).Select
ActiveCell.EntireRow.Copy
Range(ActiveCell.Offset(0, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
Application.CutCopyMode = False
End If
Mi objetivo, es encontrar algo equivalente sin escribirlo no sé cómo copiar todos los valores de la fila anterior a la nueva fila creada, y más importante, que al mismo tiempo todos los valores desde esa fila hasta el final se desplacen una posición.
Muchas gracias por vuestra ayuda.
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Hola,
Busco alguna instrucción o bucle (no se me ocurre como montarlo) que haga lo mismo que insertar una fila (si se cumple una condición sobre el valor de una celda o posición en un array) y que copia lo de esa fila, pero sin pasar por excel.
Es decir, tengo una macro que funciona en excel, pero quiero evitar excribir nada, y manejarme sólo con arrays, y una vez completado ya escirbirlo de golpe. El probema está en que hay una sentencia que en función de una condición duplica esa línea, y sigue escribiendo, y eso no sé como hacerlo sin escribirlo en excel. El trozo en cuestión sería algo así:
If Cells(18 + fila, 1 + orden + 1) <> Nin Then
Cells(17 + fila, 1 + j).Select
ActiveCell.EntireRow.Copy
Range(ActiveCell.Offset(0, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
Application.CutCopyMode = False
End If
Mi objetivo, es encontrar algo equivalente sin escribirlo no sé cómo copiar todos los valores de la fila anterior a la nueva fila creada, y más importante, que al mismo tiempo todos los valores desde esa fila hasta el final se desplacen una posición.
Muchas gracias por vuestra ayuda.