¿Cómo dividir una columna cada dos filas en Excel?
Al trabajar con listas largas en Excel, puede encontrarse con escenarios en los que necesite dividir una única columna en dos columnas separadas, de modo que cada nueva columna contenga una de cada dos filas de la lista original. Por ejemplo, si tiene una lista de contactos o una serie de registros de transacciones y desea alternar filas para crear dos listas equilibradas, esta tarea puede resultar algo complicada de realizar manualmente, especialmente con conjuntos de datos grandes. La captura de pantalla ilustra este reto, en el que los datos de una sola columna se dividen en dos columnas alternando filas. Gestionar eficazmente esta operación garantiza que la organización de sus datos sea mucho más clara y pueda adaptarse para análisis o informes posteriores.

Existen varios enfoques prácticos disponibles para abordar este problema en Excel, cada uno adecuado a distintas preferencias y necesidades:
En las siguientes secciones encontrará guías paso a paso detalladas para utilizar fórmulas, aplicar una macro VBA y emplear la utilidad Kutools para Excel, todo ello orientado a lograr el resultado deseado. Además, se incluyen consejos prácticos, precauciones y recomendaciones para solucionar problemas, con el objetivo de ayudarle a evitar errores comunes y garantizar un proceso fluido, independientemente del método que elija.
Dividir una columna cada dos filas con fórmulas
El uso de fórmulas es un método sencillo para dividir una columna en dos columnas tomando una de cada dos filas. Esta técnica resulta especialmente eficaz cuando necesita una solución dinámica que se actualice automáticamente al modificar Datos de origen, o cuando prefiere no utilizar macros ni complementos.
A continuación se indican los pasos para aplicar las fórmulas y conseguir esta división:
1. Introduzca la siguiente fórmula en una celda vacía, por ejemplo, en la celda C2. Esta fórmula extrae todas las filas impares (1.ª, 3.ª, 5.ª, etc.) del rango de datos de origen (en este caso,)$A$2:$A$13):
=INDEX($A$2:$A$13,ROWS(C$1:C1)*2-1) Esta fórmula funciona utilizando la función FILAS para calcular la posición en la lista, multiplicándola por 2 y restando 1, de modo que solo se obtienen las filas con número impar.
Por ejemplo, al introducir esta fórmula en C2 y arrastrarla hacia abajo, obtendrá los valores de A1, A3, A5, etc.

2. Tras introducir la fórmula, arrastre el controlador de relleno hacia abajo hasta que aparezcan valores de error como #¡REF!. Estos errores aparecen cuando la fórmula intenta hacer referencia a filas fuera de su rango limitado, lo que indica que ha alcanzado el final de sus datos. Le recomendamos detener el arrastre en cuanto aparezca el último valor válido y eliminar después las celdas con errores para obtener un resultado más limpio.

3. En la celda D2, introduce la siguiente fórmula para extraer todas las filas pares (2.ª, 4.ª, 6.ª, etc.) de tu rango de origen:
=INDEX($A$2:$A$13,ROWS(D$1:D1)*2) Arrastre esta fórmula hacia abajo por la columna D del mismo modo. Devolverá A3, A5, A7, etc., a medida que rellene hacia abajo.
Si es necesario, elimine todos los mensajes de error al final para lograr una mayor claridad.

Los escenarios en los que resulta útil la solución basada en fórmulas incluyen listas regulares con un número par de filas o casos en los que no le importe eliminar manualmente los valores de error sobrantes. Si su lista contiene filas en blanco, tenga en cuenta que también se transferirán según su posición; revise posibles huecos no deseados tras la división.
Consejos y precauciones: Asegúrese de ajustar las referencias de celda para que coincidan con su rango de datos real. Si el tamaño de los datos de origen cambia, revise nuevamente sus fórmulas, ya que podrían producirse errores. Asimismo, al arrastrar la fórmula, evite extenderla más allá del conjunto de datos previsto.
- Si aparecen errores #¡REF!, significa que la fórmula intenta seleccionar una fila más allá de su rango de origen. Puede ocultar estos errores usando un envoltorio
SI.ERROR, por ejemplo:=IFERROR(INDEX($A$2:$A$13,ROWS(C$1:C1)*2-1),"")Esta variante mostrará celdas en blanco en lugar del código de error, lo que dará como resultado una salida más limpia, especialmente al presentar los resultados a otras personas. - Si utiliza Excel 365, Excel 2021 o versiones posteriores, las funciones más recientes **FILTRAR** y **SECUENCIA** pueden automatizar la división en tablas dinámicas. Puede crear dos rangos mediante fórmulas como:
=FILTER(A2:A100,MOD(SEQUENCE(ROWS(A2:A100)),2)=1)para filas impares.=FILTER(A2:A100,MOD(SEQUENCE(ROWS(A2:A100)),2)=0)para filas pares.
Dividir una columna cada dos filas con código VBA
Si prefiere la automatización, trabaja con conjuntos de datos grandes o realiza esta tarea con frecuencia, una macro VBA puede dividir eficazmente una columna en dos alternando filas. VBA es ideal cuando desea tener mayor control o necesita adaptar el proceso a distintos tamaños de datos.
Siga estos pasos para utilizar la solución VBA:
1. En Excel, mantenga pulsadas las teclas ALT + F11 para abrir la ventana del editor de Microsoft Visual Basic para Aplicaciones.
2. Haga clic en Insertar > Módulo para abrir un panel de codificación en blanco y, a continuación, copie y pegue el siguiente código en la ventana del módulo:
Código VBA: Dividir una columna en dos columnas cada dos filas
Sub SplitEveryOther()
'Updateby Extendoffice
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
Dim index As Integer
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set OutRng = OutRng.Range("A1")
num1 = 1
num2 = 1
For index = 1 To InputRng.Rows.Count
If index Mod 2 = 1 Then
OutRng.Cells(num1, 1).Value = InputRng.Cells(index, 1)
num1 = num1 + 1
Else
OutRng.Cells(num2, 2).Value = InputRng.Cells(index, 1)
num2 = num2 + 1
End If
Next
End Sub 3. Pulse la tecla F5 para ejecutar la macro. Aparecerá un cuadro de diálogo que le pedirá que seleccione el rango de datos que desea dividir. Elija las celdas de destino y, a continuación, haga clic en Aceptar.

4. A continuación, aparecerá un segundo cuadro de diálogo en el que deberá seleccionar una celda de inicio para colocar los resultados de la división. Elija una celda vacía como punto de partida de su área de ubicación de la lista para evitar sobrescribir datos existentes.

5. Tras hacer clic en Aceptar, la macro dividirá su columna original en dos columnas, alternando filas desde la celda de salida designada. Revise la salida para comprobar su integridad y precisión.

Las ventajas de esta solución VBA incluyen rapidez y automatización, especialmente en tareas repetitivas o con grandes volúmenes de datos. No obstante, los usuarios deben guardar su trabajo antes de ejecutar macros, ya que las acciones de VBA podrían sobrescribir datos si no se selecciona con cuidado la celda de destino. Si obtiene errores o resultados inesperados, revise nuevamente el rango seleccionado y verifique si celdas combinadas o filas ocultas podrían estar afectando el resultado.
Consejo: Si su conjunto de datos contiene fórmulas o formato especial, tenga en cuenta que la macro copia únicamente los valores mostrados y no transfiere el formato de celda. Realice los ajustes necesarios tras la división.
Dividir una columna cada dos filas con Kutools para Excel
Si busca un enfoque más eficiente sin recurrir a fórmulas ni a VBA, Kutools para Excel ofrece una forma cómoda de dividir una columna cada dos filas. Su utilidad Transformar rango simplifica el proceso, lo que la convierte en la opción ideal para usuarios que prefieren interfaces gráficas y desean resultados rápidos sin configuración manual.
Una vez instalado Kutools para Excel, siga los pasos siguientes:
1. Seleccione en Excel los datos de la columna que desea dividir en dos columnas, alternando cada dos filas. Asegúrese de que no haya celdas combinadas ni filas ocultas en la selección para obtener los mejores resultados.
2. En la Cinta de opciones, vaya a Kutools > Rango > Transformar rango. Esto abrirá el cuadro de diálogo de la utilidad.

3. En el cuadro de diálogo Transformar rango, seleccione Columna única a rango en Tipo de transformación. En la sección Filas por registro, elija Valor fijo e introduzca 2. Esta configuración indica a Kutools que organice cada dos filas en un único registro horizontal (lo que equivale a una fila por columna dividida).

4. Haga clic en el botón Aceptar. A continuación, se le pedirá que seleccione una celda vacía donde desee que aparezcan los resultados de la división, para evitar sobrescribir contenido existente.

5. Haga clic nuevamente en Aceptar. La utilidad dividirá instantáneamente su lista seleccionada en dos columnas, tomando una de cada dos filas.
Haga clic para descubrir más sobre esta útil herramienta Transformar rango.
La solución de Kutools para Excel es ideal para usuarios que buscan un método sencillo y realizan con frecuencia tareas como remodelar datos o convertir filas en columnas. Su diseño la hace especialmente útil para quienes no se sienten cómodos escribiendo fórmulas o código VBA.
Precaución: Antes de confirmar la celda de salida, asegúrese siempre de que haya suficiente espacio para los resultados. Si la lista original es larga, escribir los resultados de Dividir Datos sobre celdas existentes podría provocar la pérdida de datos.
Kutools para Excel: potencie Excel con más de 300 herramientas esenciales, agilice y simplifique su trabajo, y aproveche las funciones de IA para un procesamiento de datos más inteligente y una mayor productividad.Consígalo ahora
Sugerencias para la solución de problemas y resumen: si los resultados de su división son incorrectos, revise nuevamente los rangos seleccionados y las referencias de las fórmulas. Asimismo, asegúrese de que sus datos originales no contengan celdas vacías, combinadas ni formatos que puedan afectar la división. Haga siempre una copia de seguridad de sus datos originales antes de realizar operaciones con VBA o utilizar complementos como Kutools. Al emplear soluciones basadas en fórmulas, envuélvalas con SI.ERROR para obtener salidas más limpias. En el caso de listas extensas o tareas recurrentes, considere automatizar con VBA o usar Kutools para lograr la máxima eficiencia.
Las mejores herramientas de productividad para Office
Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...
Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil
- Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
- Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
- ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!
Todos los complementos de Kutools en un solo instalador.
Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.
- Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
- Un instalador, una licencia— configuración en minutos (compatible con MSI)
- Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
- Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
- La mejor relación calidad-precio— ahorre frente a la compra individual de complementos