Skip to main content

¿Cómo transponer / convertir columnas y filas en una sola fila?

Author: Xiaoyang Last Modified: 2025-06-03

¿Cómo unir varias filas y columnas en una sola fila larga? Tal vez, te parezca fácil porque puedes copiarlas una por una y unirlas manualmente en una fila. Pero será muy consumidor de tiempo y tedioso si hay cientos de filas y columnas. Aquí hablaré sobre algunos trucos rápidos para resolverlo.

Transponer / Convertir columnas y filas en una sola fila con fórmula

Transponer / Convertir columnas y filas en una sola fila con código VBA

Transponer / Convertir columnas y filas en una sola fila con Kutools para Excel


Transponer / Convertir columnas y filas en una sola fila con fórmula

Supongamos que tienes un rango de datos como muestra la siguiente captura de pantalla, puedes convertir los datos del rango en una fila en una nueva hoja de cálculo con una fórmula larga.

doc-convert-range-to-row1

Por favor, aplica la fórmula de esta manera:

1. En una nueva hoja de cálculo del libro de trabajo activo, haz clic en la celda A1, copia y pega esta fórmula: =DESREF(Sheet1!$A$1,((FILA()-1)*5)+(REDONDEAR.INFERIOR(COLUMNA()-1,4)/4),(COLUMNA()-1)-(REDONDEAR.INFERIOR(COLUMNA()-1,4)))

Nota: Sheet1!$A$1 es la referencia de la hoja de cálculo y el rango que deseas utilizar.

(FILA()-1)*5 en la fórmula anterior, 5 representa el número de fila; y COLUMNA()-1,4)/4, el 4 representa el número de columna. Puedes cambiarlos según sea necesario.

2. Luego arrastra el controlador de relleno hacia la derecha hasta que aparezca el número 0. En este caso, todos los datos en el rango se han transpuesto a una sola fila en una nueva hoja de cálculo. Ver captura de pantalla:

doc-convert-range-to-row2


Transponer / Convertir columnas y filas en una sola fila con código VBA

El siguiente código VBA también puede ayudarte a convertir un rango de datos en una fila.

1. Mantén presionadas las teclas ALT + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. Haz clic en Insertar > Módulo, y pega el siguiente código en la ventana del Módulo.

Sub TransformOneRow()
'Updateby20131120
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Ranges to be transform :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Paste to (single cell):", xTitleId, Type:=8)
Application.ScreenUpdating = False
xRows = InputRng.Rows.Count
xCols = InputRng.Columns.Count
For i = 1 To xRows
    InputRng.Rows(i).Copy OutRng
    Set OutRng = OutRng.Offset(0, xCols + 0)
Next
Application.ScreenUpdating = True
End Sub

3. Luego presiona la tecla F5 para ejecutar el código, aparecerá un cuadro de diálogo para que selecciones un rango de contenido que desees convertir en una fila, y haz clic en Aceptar, otro cuadro de diálogo emergente te permitirá seleccionar una celda individual para colocar el resultado. Ver capturas de pantalla:

screenshot of converting range to row with VBA
screenshot of converting range to row with VBA arrow
screenshot of converting range to row with VBA 2

Luego haz clic en Aceptar, los contenidos en el rango seleccionado se convierten en una fila. Ver captura de pantalla:

screenshot of converting range to row with VBA original data
screenshot of converting range to row with VBA arrow 2
screenshot of converting range to row with VBA result

Nota: En Establecer OutRng = OutRng.Offset(0, xCols + 0), puedes cambiar 0 por cualquier número según lo necesites.

Por ejemplo, si deseas separar los resultados según las filas originales por una columna, puedes cambiar Establecer OutRng = OutRng.Offset(0, xCols + 0) a Establecer OutRng = OutRng.Offset(0, xCols + 1), los resultados se muestran a continuación:

screenshot of converting range to row with VBA example


Transponer / Convertir columnas y filas en una sola fila con Kutools para Excel

Parece que los dos métodos anteriores son algo difíciles para nosotros, principiantes de Excel, aquí hablaré de una herramienta práctica: Kutools para Excel.

Kutools para Excel incluye más de 300 herramientas útiles para Excel. Prueba gratis sin limitaciones durante 30 días. Consíguelo ahora.

Con la utilidad Transformar Rango de Kutools para Excel, puedes transformar rápidamente un rango en una sola fila, sigue estos pasos:

1. Selecciona el rango que deseas transponer.

2. Haz clic en KutoolsRango > Transformar Rango.

3. En el cuadro de diálogo Transformar Rango, selecciona la opción Rango a fila única, ver captura de pantalla:

screenshot of converting range to row with kutools for Excel dialog

4. Luego haz clic en Aceptar, y selecciona una celda para colocar el resultado desde el cuadro emergente.

screenshot of converting range to row with kutools for Excel output range dialog

5. Haz clic en Aceptar, y los datos en el rango se han transpuesto en una sola fila. Ver capturas de pantalla:

doc-convert-range-to-row1
-1
doc-convert-range-to-row7

Si quieres saber más sobre esta función, visita Transformar Rango.


Artículos relacionados:

¿Cómo cambiar fila por columna en Excel?

¿Cómo transponer / convertir una sola columna en múltiples columnas en Excel?

¿Cómo transponer / convertir columnas y filas en una sola columna?

Las mejores herramientas de productividad para Office

🤖 Kutools AI Aide: Revoluciona el análisis de datos basado en: Ejecución inteligente | Generar código | Crear fórmulas personalizadas | Analizar datos y generar gráficos | Invocar Funciones mejoradas
Funciones populares: Buscar, resaltar o marcar duplicados | Eliminar filas en blanco | Combinar columnas o celdas sin perder datos | Redondear...
Super BUSCARV: Búsqueda por varios criterios | Búsqueda de varios valores | Búsqueda en varias hojas | Coincidencia difusa....
Lista desplegable avanzada: Crea rápidamente una lista desplegable | Lista desplegable dependiente | Lista desplegable de selección múltiple....
Administrador de columnas: Agregar un número específico de columnas | Mover columnas | Alternar el estado de visibilidad de columnas ocultas | Comparar rangos y columnas...
Funciones destacadas: Cuadrícula de enfoque | Vista de diseño | Barra de fórmulas mejorada | Administrador de Libro de trabajo y Hoja de cálculo | Biblioteca de AutoTexto | Selector de fechas | Combinar Datos | Cifrar/Descifrar celdas | Enviar correo electrónico por lista | Super Filtro | Filtro especial (filtrar celdas con fuente en negrita/cursiva/tachado...)...
Top15 conjuntos de herramientas:12 herramientas de texto (Agregar texto, Eliminar caracteres específicos, ...) | Más de50 tipos de gráficos (Diagrama de Gantt, ...) | Más de40 fórmulas prácticas (Calcular edad basada en la fecha de nacimiento, ...) |19 herramientas de inserción (Insertar código QR, Insertar imagen desde ruta, ...) |12 herramientas de conversión (Convertir a palabras, Conversión de moneda, ...) |7 herramientas para combinar y dividir (Combinar filas avanzado, Dividir celdas, ...) | ... y más

Potencia tus habilidades en Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haz clic aquí para obtener la función que más necesitas...


Office Tab lleva la interfaz de pestañas a Office y facilita mucho tu trabajo

  • Habilita la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abre y crea varios documentos en nuevas pestañas de la misma ventana, en lugar de nuevas ventanas.
  • ¡Aumenta tu productividad en un50% y reduce cientos de clics de ratón cada día!