Buenas tardes, estoy intentando hacer un código para que cogiendo todos los datos de una columna, me los convierta en varias filas, es decir, en la columna tengo Nombre1, apellidos1, telefono1, Nombre2, apellidos2, telefono2, ... y quiero que cada registro me lo muestre en una fila:
Sub make_matrix()Dim Arr_1()Dim lnumRows AsLong, lnumCols AsLongDim rngDestRange As Range, rngCellDest As Range
Dim i AsLong, j AsLong, x AsLongDim lCounter AsLongIf Selection.Count <4Then
MsgBox "Debe seleccionar un rango de por lo menos cuatro celdas", vbExclamation
ExitSubEndIf
lnumRows = Application.InputBox("Cuantas filas en la matriz?","Filas",,,,,,2)
lnumCols = Application.InputBox("Cuantas columnas en la matriz?","Columnas",,,,,,2)ReDim Arr_1(1To lnumCols,1To lnumRows)Set rngCellDest = Application.InputBox("Posicion de la primera celda de la matriz","Copiar matriz",,,,,,8)Set rngDestRange = rngCellDest.Range(Cells(1,1), Cells(lnumCols, lnumRows))
lCounter =0For j =1To lnumRows
For i =1To lnumCols
Arr_1(j, i)= Selection.Item(lCounter +1)
lCounter = lCounter +1Next i
Next j
rngDestRange.Value = WorksheetFunction.Transpose(Arr_1)EndSub
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Buenas tardes, estoy intentando hacer un código para que cogiendo todos los datos de una columna, me los convierta en varias filas, es decir, en la columna tengo Nombre1, apellidos1, telefono1, Nombre2, apellidos2, telefono2, ... y quiero que cada registro me lo muestre en una fila: