¿Cómo transponer cada 5 o n filas de una columna a múltiples columnas?

Transponer cada 5 o n filas de una sola columna en múltiples columnas en Excel puede ser muy útil al reorganizar datos para análisis o informes. Supongamos que tienes datos largos en la columna A, y ahora deseas transponer cada 5 filas de la columna A a múltiples columnas, como transponer A1:A5 a C6:G6, A6:A10 a C7:G7, y así sucesivamente, como se muestra en la captura de pantalla de la izquierda. Esta tarea se puede abordar utilizando diferentes métodos, cada uno con sus propias ventajas. Vamos a revisar una guía detallada paso a paso sobre cómo lograr esto.
Transponer cada 5 o n filas de una columna a múltiples columnas
Transponer cada 5 o n filas de una columna a múltiples columnas con fórmula
En Excel, puedes aplicar la siguiente fórmula para transponer cada n filas de una columna a múltiples columnas, sigue estos pasos:
1. Ingresa la siguiente fórmula en una celda en blanco donde deseas colocar el resultado.
=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))

2. Luego arrastra el controlador de relleno hacia la derecha hasta cinco celdas, y sigue arrastrando el controlador de relleno hacia abajo hasta el rango de celdas hasta que aparezca 0, ver captura de pantalla:

Transponer cada 5 o n filas de una columna a múltiples columnas con Kutools para Excel
¿Estás frustrado transponiendo datos de Excel de una columna a múltiples columnas? La función "Transformar Rango" de "Kutools para Excel" está aquí para resolver tus problemas. Ya sea que necesites transponer cada 5 filas o un número personalizado de filas, te tenemos cubierto. La conversión flexible de filas te permite elegir libremente el número de filas para transponer de una columna a múltiples columnas. Es simple y rápido, no requiere operaciones complejas, solo unos pocos clics para hacerlo.
Después de instalar "Kutools para Excel", sigue estos pasos:
1. Selecciona los datos en la columna, y luego haz clic en "Kutools" > "Rango" > "Transformar Rango", ver captura de pantalla:

2. En el cuadro de diálogo "Transformar Rango", selecciona la opción "Columna única a rango" bajo el "Tipo de transformación", y luego marca "Valor fijo" bajo "Filas por registro", luego especifica el número de columnas al que deseas transponer en el cuadro "Valor fijo", ver captura de pantalla:

3. Luego haz clic en el botón "Aceptar", en el cuadro emergente, selecciona una celda para mostrar el resultado, ver captura de pantalla:

4. Luego haz clic en el botón "Aceptar", y tus datos de columna se han transpuesto cada 5 filas como se muestra en la siguiente captura de pantalla:

Transponer cada 5 o n filas de una columna a múltiples columnas con código VBA
Si no puedes aplicar correctamente la fórmula, el siguiente código VBA también puede ayudarte.
1. Mantén presionadas las teclas "ALT" + "F11" para abrir la ventana "Microsoft Visual Basic para Aplicaciones".
2. Haz clic en "Insertar" > "Módulo", y pega el siguiente código en la ventana "Módulo".
Código VBA: Transponer cada 5 o n filas de una columna a múltiples columnas:
Public Sub TransposeData()
'updateby Extendoffice
Dim xLRow As Long
Dim xNRow As Long
Dim i As Long
Dim xUpdate As Boolean
Dim xRg As Range
Dim xOutRg As Range
Dim xTxt As String
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select data range(only one column):", "Kutools for Excel", xTxt, , , , , 8)
Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
If xRg Is Nothing Then Exit Sub
If (xRg.Columns.Count > 1) Or _
(xRg.Areas.Count > 1) Then
MsgBox "the used range only contain one column", , "Kutools for Excel"
Exit Sub
End If
Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
If xOutRg Is Nothing Then Exit Sub
Set xOutRg = xOutRg.Range(1)
xUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
xLRow = xRg.Rows.Count
For i = 1 To xLRow Step 5
xRg.Cells(i).Resize(5).Copy
xOutRg.Offset(xNRow, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
xNRow = xNRow + 1
Next
Application.ScreenUpdating = xUpdate
End Sub
3. Después de pegar el código, presiona la tecla "F5" para ejecutarlo, y aparecerá un cuadro de diálogo para recordarte que selecciones la columna que deseas transponer, ver captura de pantalla:

4. Luego haz clic en "Aceptar", y selecciona una celda donde deseas colocar el resultado en otro cuadro emergente, ver captura de pantalla:

5. Y haz clic en "Aceptar", los datos en la columna se han convertido en cinco columnas que necesitabas, ver captura de pantalla:

Para transponer cada 5 o n filas de una columna a múltiples columnas en Excel, este artículo introduce tres métodos efectivos. Cada uno de estos métodos ofrece un enfoque diferente para reorganizar datos en Excel, adaptándose a diversos niveles de familiaridad del usuario con las herramientas y la programación de Excel. Si estás interesado en explorar más consejos y trucos de Excel, nuestro sitio web ofrece miles de tutoriales.
Las mejores herramientas de productividad para Office
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!