Hola a todos, si alguien me pudiera ayudar a modificar una macro que encontré por ahí, la cual consolida varias columnas en una sola, para ello primero se tiene que seleccionar el rango a consolidar y luego ejecutamos la macro y la consolidación se realiza justo en la columna siguiente del rango seleccionado y lo que deseo es que la consolidación se realice pero no en la columna siguiente si no en la tercera columna siguiente del rango seleccionado. Muchas gracias
Sub rango_columnas()
'macro une varias columnas en una sola columna
'para ello primero seleccionamos el rango a unir
'y luego ejecutamos la macro
Dim rango As Variant
Dim i As Long, j As Long, k As Long
Dim col As Long
rango = Selection.Value
'Esta es la parte que permite ubicar la salida
col = Selection.Column
k = Selection.Row
'Esto recorre el rango y realiza la trasposición
For i = 1 To UBound(rango, 1)
For j = 1 To UBound(rango, 2)
Cells(k, col + UBound(rango, 2)).Value = rango(i, j)
k = k + 1
Next
Next
End Sub
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Hola a todos, si alguien me pudiera ayudar a modificar una macro que encontré por ahí, la cual consolida varias columnas en una sola, para ello primero se tiene que seleccionar el rango a consolidar y luego ejecutamos la macro y la consolidación se realiza justo en la columna siguiente del rango seleccionado y lo que deseo es que la consolidación se realice pero no en la columna siguiente si no en la tercera columna siguiente del rango seleccionado. Muchas gracias
Sub rango_columnas()
'macro une varias columnas en una sola columna
'para ello primero seleccionamos el rango a unir
'y luego ejecutamos la macro
Dim rango As Variant
Dim i As Long, j As Long, k As Long
Dim col As Long
rango = Selection.Value
'Esta es la parte que permite ubicar la salida
col = Selection.Column
k = Selection.Row
'Esto recorre el rango y realiza la trasposición
For i = 1 To UBound(rango, 1)
For j = 1 To UBound(rango, 2)
Cells(k, col + UBound(rango, 2)).Value = rango(i, j)
k = k + 1
Next
Next
End Sub