Me parece genial este foro, pues se ve que hay bastante ayuda en cuanto a este tema de excel.
Soy nuevo y me agradaria que alguno me ayude con lo sig.
He encontrado este macro, en algún lugar jeje la verdad no recuerdo; y sirve casi perfectamente para lo que necesito. Lo que hace es pasar varios datos de columnas, uno debajo del otro, Obteniendo los datos en las filas, iniciando en 1 celda y terminando en la número 13 y los datos de la fila 2 acomodarlos de la celda 14 a la 27 y así sucesivamente hasta terminar con los datos iniciales.
Aqui lo comparto,
-------------------------------------
Sub Columna()
Const NUMERO_COLUMNAS = 8
Const NUMERO_FILAS = 5000
Const COLUMNA_DESTINO = 13 'La columna número 5 es la L
Dim m As Long
Dim n As Long
Dim nFilaDestino As Long
Columns(COLUMNA_DESTINO).Clear
nFilaDestino = 1
For m = 1 To NUMERO_FILAS
For n = 1 To NUMERO_COLUMNAS
Cells(nFilaDestino, COLUMNA_DESTINO) = Cells(m, n)
nFilaDestino = nFilaDestino + 1
Next
Next
Cells(1, COLUMNA_DESTINO).Select
End Sub
-------------------------------------
El problema radica en que sirve muy bien cuando hay 13 columnas, pero lo necesito aumentar a 30, y me sale error, he intentado cambiar las variables pero nada funciona. No soy conocedor de mucho en macros jeje pero he probado con lo que se y no encuentro la solucion.
Buenas tardes,
Me parece genial este foro, pues se ve que hay bastante ayuda en cuanto a este tema de excel.
Soy nuevo y me agradaria que alguno me ayude con lo sig.
He encontrado este macro, en algún lugar jeje la verdad no recuerdo; y sirve casi perfectamente para lo que necesito. Lo que hace es pasar varios datos de columnas, uno debajo del otro, Obteniendo los datos en las filas, iniciando en 1 celda y terminando en la número 13 y los datos de la fila 2 acomodarlos de la celda 14 a la 27 y así sucesivamente hasta terminar con los datos iniciales.
Aqui lo comparto,
-------------------------------------
Sub Columna()
Const NUMERO_COLUMNAS = 8
Const NUMERO_FILAS = 5000
Const COLUMNA_DESTINO = 13 'La columna número 5 es la L
Dim m As Long
Dim n As Long
Dim nFilaDestino As Long
Columns(COLUMNA_DESTINO).Clear
nFilaDestino = 1
For m = 1 To NUMERO_FILAS
For n = 1 To NUMERO_COLUMNAS
Cells(nFilaDestino, COLUMNA_DESTINO) = Cells(m, n)
nFilaDestino = nFilaDestino + 1
Next
Next
Cells(1, COLUMNA_DESTINO).Select
End Sub
-------------------------------------
El problema radica en que sirve muy bien cuando hay 13 columnas, pero lo necesito aumentar a 30, y me sale error, he intentado cambiar las variables pero nada funciona. No soy conocedor de mucho en macros jeje pero he probado con lo que se y no encuentro la solucion.
Adjunto el archivo para que me entiendan mejor.
Alguien podria ayudarme?
Muchas gracias,
Rodrigo
macro-13.xls