Estimados amigos:
el siguiente codigo:
Sub Inserta_x_filas()
Windows("centrales.xls").Activate ' ADICIONADA
ActiveWorkbook.Worksheets("hoja1").Range("datos_cent").EntireRow.Copy
Windows("matriz.xls").Activate ' ADICIONADA
With ThisWorkbook.Worksheets("hoja1").Range("a2")
.Insert xlDown
.Sort Key1:=.Cells(1), Order1:=xlAscending, Header:=xlYes
End With
End Sub
me funciona pero pega los valores de "datos_cent" con formulas, existe
alguna manera de que se peguen como valores absolutos, sin formula, lo unico
que puede hacer fue lo siguiente:
Sub Inserta_x_filas()
Windows("centrales.xls").Activate
ActiveWorkbook.Worksheets("hoja1").Range("datos_cent").EntireRow.Copy
Windows("matriz.xls").Activate
With ThisWorkbook.Worksheets("hoja1").Range("a3")
.Insert xlDown
End With
Windows("centrales.xls").Activate
ActiveWorkbook.Worksheets("hoja1").Range("datos_cent").EntireRow.Copy
Windows("matriz.xls").Activate
With ThisWorkbook.Worksheets("hoja1").Range("a3")
.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
.Sort Key1:=.Cells(1), Order1:=xlAscending, Header:=xlYes
End With
End Sub
donde primero se copia el bloque y abre el espacio en filas que se requiere
pero con formulas en algunas celdas, la segunda parte vuelve a copiar y
encima con pastespecial en esos mismos espacios pero en solo los valores
abosolutos, es decir que varias filas de "datos_cent" tienen formulas
(a1*a5) y lo que deseo es que pase solo el valor y no la formula.
Se puede simplificar el codigo anterior
Gracias de nuevo
Leer las respuestas