¿Cómo unir varias columnas en una solo columna?

Tengo varias columnas, y lo que quiero hacer es copiar el cuadro o tabla donde están las columnas y pegarlas, pero que aparezcan todas columnas en una sola columna. Osea, la segunda columna bajo la primera columna y la tercera bajo la segunda columna y asi sucesivamente, sin dejar espacios entre cada columna. Esto es en excel.

Respuesta
4

Tendría que ser con una macro, ¿quieres qué la haga?

¿De cuál a cuál columna quieres unir?

¿En cuál columna quieres la unión?

por favor, te lo agradeceré. es de la columna c ala o, y la union la quiero en una columna aparte....osea que se conserven las anteriores

puedes ayudarme, de veras me urge, te lo agradeceré.........

Utiliza la siguiente macro, si quieres otras columnas, puedes cambiarlas dentro de la macro, en esta parte:
ci = Columns("C").Column 'columna inicial a unir
cf = Columns("O").Column 'columna final a unir
La columna unión le puse la Z, si quieres otra columna, también puedes cambiarla en la macro, en esta parte:
cd = Columns("Z").Column 'columna unión
Los datos de cada columna, que se van a copiar empiezan desde la fila 1 hasta la última fila que tenga datos. Si quieres que empiece la copia en otra fila cambia la macro en esta parte:
f = 1 'fila inicial de datos

Sigue las Instrucciones para un botón y ejecutar la macro
1. Abre tu libro de Excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Ahora para crear un botón, puedes hacer lo siguiente:
6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona Asignar macro / Selecciona: unir_columnas
9. Aceptar.
10. Para ejecutarla dale click a la imagen.

Sub unir_columnas()
'Por.DAM
ci = Columns("C").Column 'columna inicial a unir
cf = Columns("O").Column 'columna final a unir
cd = Columns("Z").Column 'columna unión
f = 1 'fila inicial de datos
For i = ci To cf
    uf = Cells(Rows.Count, i).End(xlUp).Row
    ud = Cells(Rows.Count, cd).End(xlUp).Row + 1
    Range(Cells(f, i), Cells(uf, i)).Copy Cells(ud, cd)
Next
End Sub

Saludos.DAM
Si es lo que necesitas.

sabes se me esta complicando bastante introducir la macro, primero al quererla guardar me dise: las siguientes características no se pueden guardar en libros sin macros...

tal vez mejor pueda enviarte un archivo haber si lo puedes aplicar tu y me los mandas, mi correo es [email protected]

Mi correo [email protected]
En el asunto del correo escribe tu nombre de usuario y el título de esta pregunta.

6 respuestas más de otros expertos

Respuesta
1

Estoy trabajando con las hojas de calculo de google y me surgió la misma necesidad, me fueron de mucha ayuda, muchas gracias!

La solución que encontré es la siguiente:

=TRANSPOSE(SPLIT(JOIN(",";seleccionar matriz 1;seleccionar matriz 2);","))

Respuesta

Funcionó

Respuesta

Increíble!

Respuesta

Me ayudaste mucho :)

Respuesta

Excelente maestro, fue de gran ayuda para formar un archivo csv a partir de una base de datos

Respuesta

Soy paula y vi la siguinete macro que vs realizaste en el sitio de todo expertos, necesitaria tu ayuda para poder modificar la macro, en realidad necesito hacer lo mismo que te consultaron pero las columnas con los datos están en una hoja distinta de la columna que recopila .

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas