Cuando tienes una celda con «Ana García López» y necesitas el nombre en una columna y los apellidos en otra, Excel te lo resuelve de dos formas: el asistente Texto en columnas, que parte el texto de golpe, y la función DIVIDIRTEXTO (en inglés TEXTSPLIT), que parte el texto con una fórmula que sigue viva si cambian los datos. Al terminar el artículo sabrás elegir entre los dos caminos, aplicarlos sobre nombres y códigos reales y limpiar los espacios sobrantes.
Qué es dividir texto en Excel y cuándo te ahorra trabajo
Imagina una hoja de altas de personal: en la columna A tienes nombres completos recibidos de un formulario («Ana García López», «Pedro Sánchez Ruiz»…) y necesitas una columna con el nombre y otra con los apellidos para poder ordenar por apellido o cruzar con otras hojas. Esa operación, partir una celda en varias a partir de un carácter concreto (un espacio, una coma, un guion), se llama dividir texto y es de las que más tiempo ahorran cuando llegan datos «pegados» desde un PDF, una web o un programa antiguo.
Tienes dos caminos. El asistente Texto en columnas, en la pestaña Datos, parte el texto de una vez y deja los trozos ya escritos en la hoja, así que sirve para importaciones puntuales que no van a cambiar. La función DIVIDIRTEXTO hace lo mismo con una fórmula: si el nombre de A2 se corrige a «Ana García López», los trozos de B2 y C2 se actualizan solos.
Elige el asistente cuando el trabajo sea de una sola vez sobre muchas filas y no esperas que cambien. Elige la fórmula cuando la celda original pueda modificarse y quieras que las derivadas se mantengan vivas.
Texto en columnas: el asistente de la cinta
El asistente vive en la cinta, dentro de Datos, y es la herramienta clásica para partir una columna en varias sin escribir una sola fórmula.
Al pulsarlo se abre el Asistente para convertir texto en columnas, un cuadro con tres pasos. En el primero eliges el tipo de división. En el segundo marcas el carácter que sirve de corte. En el tercero decides dónde se escribe el resultado y el formato de cada columna nueva.
Elegir el tipo de división: delimitados o ancho fijo
El primer paso del asistente pregunta cómo está separado el texto.
Elija el tipo que mejor describa los datos:
| Ana García López |
| Pedro Sánchez Ruiz |
Elige Delimitados cuando el texto se parte por un carácter concreto: una coma, un punto y coma, un espacio, una tabulación o cualquier otro símbolo que escribas en el cuadro Otro. Elige Ancho fijo cuando las partes están alineadas a una posición fija (por ejemplo, los tres primeros caracteres son el país y los cuatro siguientes el número); en ese caso dibujas las líneas de corte con un clic en la regla de la vista previa.
| Tipo | Cuándo usarlo | Ejemplo |
|---|---|---|
| Delimitados | El texto contiene un carácter separador | «Ana,García,López» con coma |
| Ancho fijo | Las partes están alineadas por columnas | «ES 001MAD » con corte en 2, 5 y 8 |
La vista previa de datos antes de pasar a la hoja
El segundo paso muestra una vista previa que reacciona a lo que marcas: cada delimitador elegido pinta una línea vertical en la vista previa y el texto se reparte en columnas.
| Ana | García López |
| Pedro | Sánchez Ruiz |
Si la vista previa no se parece a lo que esperabas, cambia de carácter separador o pasa al tipo Ancho fijo antes de seguir. Cuando se parece, pulsa Siguiente para ir al tercer paso, donde indicas la celda Destino (por defecto, la misma columna que vas a machacar) y el formato de cada columna nueva (General, Texto o Fecha).
DIVIDIRTEXTO: la fórmula que divide y se queda dinámica
DIVIDIRTEXTO es la función moderna para partir texto sin tocar el ratón: vive en la celda, se actualiza si cambia el origen y puede desbordarse a varias filas y columnas a la vez.
Su sintaxis es:
=DIVIDIRTEXTO(texto; col_delimiter; [row_delimiter]; [ignore_empty]; [match_mode]; [pad_with])
texto: la celda o el literal entre comillas que contiene el texto a dividir.col_delimiter(obligatorio): el carácter que separa las columnas, por ejemplo","o" ".row_delimiter(opcional): el carácter que separa las filas, por ejemplo";". Si se omite, el resultado sale todo en una fila.ignore_empty(opcional):VERDADEROpara que los huecos entre dos delimitadores seguidos no generen celdas vacías;FALSOlos mantiene.match_mode(opcional):0distingue mayúsculas de minúsculas (por defecto);1no las distingue, así «y» e «Y» cuentan igual.pad_with(opcional): el valor con el que se rellenan las celdas que se quedan cortas cuando las filas no son iguales; lo normal es""para dejarlas vacías.
Disponible desde Excel 2024 y Microsoft 365. Si tu Excel es 2021 o anterior, esta función no existe y la celda mostrará #¿NOMBRE?; en su lugar usa el asistente Texto en columnas.
col_delimiter y row_delimiter: el carácter que parte el texto
El delimitador de columna parte hacia la derecha y el delimitador de fila parte hacia abajo. Si dejas el de columna vacío y rellenas solo el de fila, el resultado cae como lista en una sola columna.
=DIVIDIRTEXTO(A2;"-")
=DIVIDIRTEXTO(A2;;",";VERDADERO)
=DIVIDIRTEXTO(A2;",";";")
| Fórmula | Texto en A2 | Resultado |
|---|---|---|
=DIVIDIRTEXTO(A2;"-") |
«ES-MAD-001» | ES, MAD, 001 en tres celdas a la derecha |
=DIVIDIRTEXTO(A2;;",";VERDADERO) |
«rojo,verde,azul» | rojo, verde, azul hacia abajo en B |
=DIVIDIRTEXTO(A2;",";";") |
«a;b,c;d» | dos filas: «a» y «b,c;d» |
ignore_empty, match_mode y pad_with: vacíos, mayúsculas y errores
Los tres argumentos opcionales sirven para pulir el resultado.
ignore_empty=VERDADEROevita que dos delimitadores seguidos (por ejemplo dos comas) generen una celda vacía intermedia; muy útil cuando los datos vienen de exportaciones sucias.match_mode=1trata por igual las mayúsculas y las minúsculas del delimitador: «y» e «Y» cuentan como el mismo carácter.pad_with=""rellena con cadena vacía las celdas que faltan cuando las filas no tienen la misma longitud, así no aparece el error #N/D.
| Argumento | Valor | Efecto |
|---|---|---|
ignore_empty |
FALSO (por defecto) |
Mantiene los huecos como celdas vacías |
ignore_empty |
VERDADERO |
Borra los huecos y junta las partes |
match_mode |
0 (por defecto) |
Distingue mayúsculas y minúsculas |
match_mode |
1 |
Ignora la diferencia entre «a» y «A» |
pad_with |
omitido | Las celdas cortas muestran #N/D |
pad_with |
"" |
Las celdas cortas quedan vacías |
Separar nombre y apellido con Texto en columnas
Partimos de la hoja de altas: en A tienes nombres completos y quieres el nombre en A y los apellidos en B.
| A | B | |
|---|---|---|
| 1 | Nombre completo | Apellidos |
| 2 | Ana García López | |
| 3 | Pedro Sánchez Ruiz | |
| 4 | Lucía Díaz Río | |
| 5 | Javier Martín Soto | |
| 6 | Sara Núñez Pino |
Pasos para partir el texto:
- Selecciona
A2:A6. - Abre
Datos > Herramientas de datos > Texto en columnas. - En el paso 1, deja marcado Delimitados y pulsa Siguiente.
- En el paso 2, marca solo el separador Espacio y desmarca los demás. Verás que en la vista previa queda «Ana» en una columna y «García López» en otra. Pulsa Siguiente.
- En el paso 3, escribe
B2en el cuadro Destino para que la segunda parte se escriba a la derecha de la hoja sin tocar A. Pulsa Finalizar.
| A | B | |
|---|---|---|
| 1 | Nombre completo | Apellidos |
| 2 | Ana García López | García López |
| 3 | Pedro Sánchez Ruiz | Sánchez Ruiz |
| 4 | Lucía Díaz Río | Díaz Río |
| 5 | Javier Martín Soto | Martín Soto |
| 6 | Sara Núñez Pino | Núñez Pino |
Dividir un código con tres partes usando DIVIDIRTEXTO
La hoja de códigos de producto guarda el país, la ciudad y el número de serie pegados con guiones. Vamos a partirlos con una fórmula para que, si cambia el código, las tres partes se actualicen solas.
| A | |
|---|---|
| 1 | Producto |
| 2 | ES-MAD-001 |
| 3 | MX-CDM-014 |
| 4 | AR-BUE-027 |
| 5 | CL-SCL-042 |
| 6 | PE-LIM-068 |
En B2 escribe:
=DIVIDIRTEXTO(A2;"-")
Excel derrama el resultado a la derecha: B2 toma «ES», C2 toma «MAD» y D2 toma «001». Selecciona B2 y copia la fórmula hacia abajo hasta B6; como la fórmula apunta a A2 y no usa referencias absolutas, al arrastrar se convierte en =DIVIDIRTEXTO(A3;"-"), =DIVIDIRTEXTO(A4;"-") y así.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Producto | País | Ciudad | Número |
| 2 | ES-MAD-001 | ES | MAD | 001 |
| 3 | MX-CDM-014 | MX | CDM | 014 |
| 4 | AR-BUE-027 | AR | BUE | 027 |
| 5 | CL-SCL-042 | CL | SCL | 042 |
| 6 | PE-LIM-068 | PE | LIM | 068 |
Varios delimitadores a la vez con llaves
En la realidad los datos mezclan separadores: el primer código usa guion, otro usa barra, otro mezcla ambos. Para partir por cualquiera de ellos a la vez, DIVIDIRTEXTO admite una matriz de delimitadores entre llaves.
| A | |
|---|---|
| 1 | Producto |
| 2 | ES-MAD-001 |
| 3 | ES/MAD 001 |
| 4 | ES.MAD-001 |
| 5 | ES MAD 001 |
| 6 | ES/MAD-001 |
En B2 escribe:
=DIVIDIRTEXTO(A2;{"-";"/";" ";"."})
Excel parte cada código por guion, barra, espacio o punto, lo que aparezca primero, y devuelve país, ciudad y número en B2, C2 y D2.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Producto | |||
| 2 | ES-MAD-001 | ES | MAD | 001 |
| 3 | ES/MAD 001 | ES | MAD | 001 |
| 4 | ES.MAD-001 | ES | MAD | 001 |
| 5 | ES MAD 001 | ES | MAD | 001 |
| 6 | ES/MAD-001 | ES | MAD | 001 |
Convertir una línea en una lista vertical
Cuando el delimitador útil es el de fila y no el de columna, deja el primer argumento de DIVIDIRTEXTO en blanco y rellena solo el de fila.
| A | |
|---|---|
| 1 | Catálogo |
| 2 | rojo;verde;azul;blanco |
En B2 escribe:
=DIVIDIRTEXTO(A2;;";")
El resultado cae en B2, B3, B4 y B5, una lista vertical de cuatro colores.
| A | B | |
|---|---|---|
| 1 | Catálogo | Color |
| 2 | rojo;verde;azul;blanco | rojo |
| 3 | verde | |
| 4 | azul | |
| 5 | blanco |
Limpiar los espacios de más que deja la división
Cuando el nombre original trae dos espacios seguidos o un espacio al final, DIVIDIRTEXTO y Texto en columnas los respetan y dejan huecos molestos. La función ESPACIOS recorta los espacios sobrantes: los del principio, los del final y los sobrantes entre palabras, dejando uno solo.
| A | B | |
|---|---|---|
| 1 | Nombre completo | Apellidos limpios |
| 2 | Ana García López | García López |
| 3 | Pedro Sánchez Ruiz | Sánchez Ruiz |
En C2 escribe:
=ESPACIOS(DIVIDIRTEXTO(A2;" ";" ";VERDADERO))
VERDADERO en ignore_empty ignora los huecos que deja el doble espacio, y ESPACIOS por fuera se encarga de dejar uno solo entre «García» y «López».
| A | B | C | |
|---|---|---|---|
| 1 | Nombre completo | Apellidos brutos | Apellidos limpios |
| 2 | Ana García López | García López | García López |
| 3 | Pedro Sánchez Ruiz | Sánchez Ruiz | Sánchez Ruiz |
| 4 | Lucía Díaz Río | Díaz Río | Díaz Río |
Por qué Texto en columnas «machaca» los datos de al lado
El asistente Texto en columnas escribe su resultado a partir de la celda de Destino sin pedir confirmación: si esa columna tiene datos importantes, los pisa sin avisar. La solución está en el tercer paso del asistente, en el cuadro Destino: escribir manualmente la celda donde quieres que empiece el resultado (por ejemplo, B2 en lugar de A2) hace que el resultado se coloque en una zona libre. Si no hay zona libre, copia primero la columna a otra hoja antes de lanzar el asistente.
Con DIVIDIRTEXTO no pasa: la fórmula solo escribe en las celdas vacías que necesita para desbordarse, y si la celda siguiente ya tiene un valor, muestra el error #¡DESBORDAMIENTO!.
DIVIDIRTEXTO muestra #N/D en las filas desiguales
Cuando los datos no son uniformes, DIVIDIRTEXTO rellena las celdas que faltan con #N/D, un error que indica «aquí no hay dato» y que las hojas que tiren de estas celdas propagarán.
| A | |
|---|---|
| 1 | Producto |
| 2 | ES-MAD-001 |
| 3 | MX 014 |
Con =DIVIDIRTEXTO(A2;{"-";" "};" ") el segundo código solo tiene dos partes; la celda D3 mostrará #N/D. Para evitarlo, añade el argumento pad_with:
=DIVIDIRTEXTO(A2;{"-";" "};" ";FALSO;0;"")
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Producto | |||
| 2 | ES-MAD-001 | ES | MAD | 001 |
| 3 | MX 014 | MX | 014 |
Ahora D3 queda vacío en lugar de mostrar #N/D, y el resto de la hoja puede operar sobre esa columna sin propagar errores.
pad_with lleva dos comillas seguidas ("") y no un espacio.DIVIDIRTEXTO da #¿NOMBRE? en versiones viejas
DIVIDIRTEXTO solo existe en Excel 2024 y en Microsoft 365. Si la escribes en Excel 2021, 2019, 2016 o cualquier versión anterior, la celda mostrará #¿NOMBRE?, que significa que Excel no reconoce esa función.
=DIVIDIRTEXTO(...) y que usas punto y coma como separador.En esas versiones la alternativa es el asistente Texto en columnas que vimos antes: abre la herramienta, marca el delimitador y deja que Excel haga el trabajo. La diferencia es que el resultado queda como valores fijos, no como fórmula viva.
Lo que ya sabes hacer al dividir texto en Excel
- En Excel hay dos caminos para partir una celda: el asistente Texto en columnas (Datos > Herramientas de datos > Texto en columnas) para trabajos puntuales, y la función DIVIDIRTEXTO para datos que pueden cambiar.
- El asistente pide el tipo (Delimitados o Ancho fijo), el carácter separador y el destino del resultado; si el destino tiene datos, los borra sin avisar.
- DIVIDIRTEXTO usa
col_delimiterpara partir a la derecha yrow_delimiterpara partir hacia abajo; con llaves se aceptan varios delimitadores a la vez. - Los argumentos opcionales
ignore_empty,match_modeypad_withcontrolan huecos, mayúsculas y errores; este último evita el #N/D de las filas desiguales. - ESPACIOS por fuera de la división limpia los dobles espacios que dejan los datos sucios.
Como siguiente paso, una vez que tienes los trozos separados, lo natural es volver a unirlos: la función UNIRCADENAS (en inglés TEXTJOIN) hace lo contrario, juntar varias celdas en una sola eligiendo el separador.
Dudas al dividir texto en Excel
1. ¿Qué fórmulas de Excel sirven para separar un texto en partes?
Las tres funciones clave son EXTRAE (MID), que corta desde una posición; IZQUIERDA (LEFT) y DERECHA (RIGHT), que toman un número fijo de caracteres; y HALLAR (SEARCH) o ENCONTRAR (FIND) para localizar la separación. Para casos más complejos, la función TEXTOFRAGMENTAR (TEXTSPLIT), disponible desde Excel 2021 y Microsoft 365, divide el texto en varias celdas indicando solo el delimitador.
2. ¿Por qué no encuentro la función para dividir texto en mi Excel?
Si tu versión es anterior a Excel 2021, no tendrás TEXTOFRAGMENTAR (TEXTSPLIT) ni las matrices dinámicas. En ese caso la solución clásica es usar Datos > Herramientas de datos > Texto en columnas, que divide el contenido sin fórmulas, o combinar IZQUIERDA, DERECHA, EXTRAE y HALLAR para hacerlo manualmente.
3. ¿Se puede separar un texto dentro de la misma celda, en varias líneas?
Sí, usando la función CARACTER (CHAR) con el número 10, que es el salto de línea en Excel. Por ejemplo: =A1&CARACTER(10)&A2 une dos textos y los muestra en líneas distintas dentro de la misma celda. Recuerda activar la opción Ajustar texto en Inicio > Alineación para que se vean los saltos.
4. ¿Cómo se escribe la fórmula para separar texto en Excel en inglés?
Las equivalencias son: EXTRAE = MID, IZQUIERDA = LEFT, DERECHA = RIGHT, HALLAR = SEARCH, ENCONTRAR = FIND, LARGO = LEN y TEXTOFRAGMENTAR = TEXTSPLIT. En código VBA con la propiedad .Formula se escriben en inglés y con comas, por ejemplo: .Range("B1").Formula = "LEFT(A1,5)".
5. ¿Cómo paso el texto de una celda a varias filas en Excel?
Con la función TEXTOFRAGMENTAR (TEXTSPLIT) y el segundo argumento como VERDADERO escribe cada fragmento en una fila distinta, en la misma columna. Por ejemplo: =TEXTOFRAGMENTAR(A1;",";VERDADERO) convierte "Ana,Juan,Luisa" en tres filas con un nombre cada una, sin necesidad de copiar y pegar.
6. ¿Cómo separo un texto en varias columnas en Excel?
La forma más rápida es seleccionar la columna, ir a Datos > Herramientas de datos > Texto en columnas y elegir Delimitado (por comas, espacios, punto y coma, etc.). Si prefieres fórmulas, TEXTOFRAGMENTAR (TEXTSPLIT) en Excel 2021 o Microsoft 365 lo hace en una sola celda: =TEXTOFRAGMENTAR(A1;" ") reparte cada palabra en una columna.
7. ¿Cómo uno textos de varias columnas en una sola en Excel?
Con la función CONCAT (CONCATENAR en versiones antiguas) o, mejor aún, UNIRCADENAS (TEXTJOIN), que permite elegir un separador y si ignora celdas vacías. Por ejemplo: =UNIRCADENAS(", ";VERDADERO;A1:C1) une el contenido de A1, B1 y C1 con coma y espacio, descartando huecos en blanco.
Fuentes
- MicrosoftTEXTO — documentación oficialconsultado el 05/10/2026
- MicrosoftDIVIDIRTEXTO — documentación oficialconsultado el 05/10/2026
- MicrosoftFORMULATEXTO — documentación oficialconsultado el 05/10/2026
- MicrosoftUna celda vacía en una fórmula — documentación oficialconsultado el 05/10/2026
- MicrosoftReferencias relativas, absolutas y mixtas — documentación oficialconsultado el 05/10/2026