Copiar un rango de forma dinámica en excel

Quiero ingresar una matriz de 3x4, 3x5, 4x4, etc y que excel reconozca en donde hay valores y copie las celdas con valores en la hoja2 iniciando en A1. El código que uso es el siguiente: Sheets("Hoja1"). Range("A1:D12").Copy Destination:=Sheets("Hoja2"). Range("A1")

1 respuesta

Respuesta
1

H o l a:

Puedes explicar con un par de ejemplos qué datos tienes en la matriz y qué esperas de resultado.

solo quiero que copie los datos numéricos en la hoja 2 empezando en la Celda A1. Los elementos de la matriz pueden crecer hacia la derecha e izquierda.

ejmplo:

Te anexo la macro

Sub CopiarMatriz()
'Por.Dante Amor
    Set h1 = Sheets("Hoja1")
    Set h2 = Sheets("Hoja2")
    h2.Range("A1").CurrentRegion.ClearContents
    uf = h1.Range("A" & Rows.Count).End(xlUp).Row
    uc = h1.Cells(1, Columns.Count).End(xlToLeft).Column
    h1.Range(h1.Cells(1, "A"), h1.Cells(uf, uc)).Copy h2.[A1]
End Sub

Sal u dos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas