¿Cómo transponer columnas a filas e insertar nuevas filas para rellenar datos hacia abajo en Excel?
En este artículo, presento un código VBA para transponer columnas a filas e insertar nuevas filas para rellenar datos como se muestra en la captura de pantalla a continuación. Si estás interesado en esta operación, por favor, ve a continuación para más detalles.
Transponer e insertar filas con VBA
Transponer e insertar filas con VBA
No hay una manera directa de transponer un rango e insertar filas para rellenar los mismos datos, pero aquí puedo introducir un código VBA para resolver rápidamente esta tarea.
1. Presiona 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 VBA en la ventana del Módulo. Ver captura de pantalla:
VBA: Transponer e insertar filas.
Sub TransposeInsertRows()
'UpdatebyExtendoffice20161125
Dim xRg As Range
Dim i As Long, j As Long, k As Long
Dim x As Long, y As Long
Set xRg = Application.InputBox _
(Prompt:="Range Selection...", _
Title:="Kutools For Excel", Type:=8)
Application.ScreenUpdating = False
x = xRg(1, 1).Column + 2
y = xRg(1, xRg.Columns.Count).Column
For i = xRg(xRg.Rows.Count, 1).Row To xRg(1, 1).Row Step -1
If Cells(i, x) <> "" And Cells(i, x + 1) <> "" Then
k = Cells(i, x - 2).End(xlToRight).Column
If k > y Then k = y
For j = k To x + 1 Step -1
Cells(i + 1, 1).EntireRow.Insert
With Cells(i + 1, x - 2)
.Value = .Offset(-1, 0)
.Offset(0, 1) = .Offset(-1, 1)
.Offset(0, 2) = Cells(i, j)
End With
Cells(i, j).ClearContents
Next j
End If
Next i
Application.ScreenUpdating = True
End Sub
3. Presiona F5 para ejecutar el código, y luego selecciona el rango de datos que deseas transponer e insertar filas en el cuadro de diálogo emergente. Ver captura de pantalla:
4. Haz clic en Aceptar. Y el rango seleccionado se ha convertido como se muestra en la siguiente captura de pantalla.

Las mejores herramientas de productividad para Office
Impulsa al máximo tu dominio de Excel con Kutools para Excel y experimenta una eficiencia sin precedentes. Kutools para Excel ofrece más de300 funciones avanzadas para potenciar la productividad y ahorrar tiempo.Haz clic aquí para obtener la función que más necesitas...
Office Tab aporta una interfaz de pestañas a Office y hace tu trabajo mucho más sencillo
- 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 vez de en nuevas ventanas.
- ¡Aumenta tu productividad hasta un50% y reduce cientos de clics de ratón cada día!