Fórmula de Excel: dividir una oración en palabras
En Excel, como bien sabemos, la herramienta *Texto en columnas* permite dividir una oración en celdas según un delimitador. Sin embargo, a veces necesitamos lograrlo mediante una fórmula. En este tutorial te ofrecemos una fórmula matricial capaz de hacerlo.
Fórmula genérica:
| =MID(« »&$TXT&« », SMALL(IF(ISERROR(SEARCH(MID(« »&$TXT&« », ROW($1:$99), 1), « »)), «», ROW($1:$99)+1), COLUMN(A1)), SMALL(IF(ISERROR(SEARCH(MID(« »&$TXT&« », ROW($1:$99), 1), « »)), «», ROW($1:$99)), COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID(« »&$TXT&« », ROW($1:$99), 1), « »)), «», ROW($1:$99)), COLUMN(A1))-1) |
Argumentos
| Number: the sentence or text string you want to split to words in separated cells. |
Cómo funciona esta fórmula
Tomando la celda B3 como ejemplo, puede utilizar la siguiente fórmula:
| =MID(« »&$B3&« », SMALL(IF(ISERROR(SEARCH(MID(« »&$B3&« », ROW($1:$99), 1), « »)), «», ROW($1:$99)+1), COLUMN(A1)), SMALL(IF(ISERROR(SEARCH(MID(« »&$B3&« », ROW($1:$99), 1), « »)), «», ROW($1:$99)), COLUMN(A1)+1)-SMALL(IF(ISERROR(SEARCH(MID(« »&$B3&« », ROW($1:$99), 1), « »)), «», ROW($1:$99)), COLUMN(A1))-1) |
Pulse Mayús + Ctrl + Intro para extraer la primera palabra y, a continuación, arrastre el controlador de relleno hacia la derecha hasta que se hayan extraído todas las palabras.

Explicación
MID extrae una subcadena de una cadena de texto según la posición inicial y el número de caracteres indicados.
ROW devuelve el número de fila; aquí se configura para generar un vector del 1 al 99.
Entonces, la fórmula EXTRAE(« »&$B2&« », FILA($1:$99), 1)
=MID(" Class A Grade 3 Lily Core", {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20; 21; 22; 23; 24; 25; 26; 27; 28; 29; 30; 31; 32; 33; 34; 35; 36; 37; 38; 39; 40; 41; 42; 43; 44; 45; 46; 47; 48; 49; 50; 51; 52; 53; 54; 55; 56; 57; 58; 59; 60; 61; 62; 63; 64; 65; 66; 67; 68; 69; 70; 71; 72; 73; 74; 75; 76; 77; 78; 79; 80; 81; 82; 83; 84; 85; 86; 87; 88; 89; 90; 91; 92; 93; 94; 95; 96; 97; 98; 99}, 1)
={« »;«C»;«l»;«a»;«s»;«s»;« »;«A»;« »;«G»;«r»;«a»;«d»;«e»;« »;"3";« »;«L»;«i»;«l»;«y»;« »;«C»;«o»;«r»;«e»;« »;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;
«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»;«»}
SEARCH devuelve la posición del carácter o texto específico dentro de la cadena indicada. Si no se encuentra, la función devuelve un valor de error.
La fórmula HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)
={1;#¡VALOR!;#¡VALOR!;#¡VALOR!;#¡VALOR!;#¡VALOR!;1;#¡VALOR!;1;#¡VALOR!;#¡VALOR!;
#¡VALOR!;#¡VALOR!;#¡VALOR!;1;#¡VALOR!;1;#¡VALOR!;#¡VALOR!;#¡VALOR!;#¡VALOR!;1;
#¡VALOR!;#¡VALOR!;#¡VALOR!;#¡VALOR!;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;
1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;1;
1;1;1;1;1}
La función ISERROR devuelve VERDADERO si el valor es un error.
Entonces, la fórmula ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »))
={FALSO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;FALSO;VERDADERO;FALSO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;
VERDADERO;FALSO;VERDADERO;FALSO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;FALSO;VERDADERO;VERDADERO;VERDADERO;VERDADERO;
FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;
FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;
FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;
FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;
FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;
FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;FALSO;
FALSO}
IFLa función SI evalúa una condición específica. Tiene tres argumentos: el primero debe ser una expresión lógica; si es «VERDADERO», se muestra el segundo argumento, y si es «FALSO», se muestra el tercero.
La fórmula SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99))
={1;«»;«»;«»;«»;«»;7;«»;9;«»;«»;«»;«»;«»;15;«»;17;«»;«»;«»;«»;22;«»;«»;«»;«»;27;28;29;30;31;32;33;34;35;
36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;
64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;88;89;90;91;92;
93;94;95;96;97;98;99}
SMALL función devuelve entonces el valor más pequeño del vector.
COLUMN devuelve el número de la columna en la que aparece la fórmula o el número de columna de la referencia indicada.
Entonces
K.ESIMO.MENOR(SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99)), COLUMNA(A1))
={1}
Entonces, la fórmula
K.ESIMO.MENOR(SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99)), COLUMNA(A1)+1)- K.ESIMO.MENOR(SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99)), COLUMNA(A1))
={7-1}
={6}
Entonces, la fórmula
EXTRAE(« »&$B3&« », K.ESIMO.MENOR(SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99)+1), COLUMNA(A1)), K.ESIMO.MENOR(SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99)), COLUMNA(A1)+1)-K.ESIMO.MENOR(SI(ESERROR(HALLAR(EXTRAE(« »&$B3&« », FILA($1:$99), 1), « »)), «», FILA($1:$99)), COLUMNA(A1))-1)
=MID(« »&$B3&« »,2,6-1)
={Class}
Archivo de ejemplo
Haga clic para descargar el archivo de ejemplo
Fórmulas relacionadas
- Extraer desde la derecha hasta un carácter
Aquí tienes la fórmula para extraer texto desde la derecha de una cadena dada hasta un carácter especificado. - Recortar texto a N palabras
Aquí tienes la fórmula para extraer las primeras N palabras de una cadena de texto. - Añade ceros a la izquierda para fijar la longitud
Este tutorial ofrece fórmulas para añadir ceros iniciales y lograr que todos los textos tengan la misma longitud. - Separar dólares y céntimos
Separa los dólares y los céntimos en dos columnas distintas usando fórmulas en Excel.
Funciones relacionadas
- Función EXTRAE
Extrae una parte del texto de un valor de celda a partir de la posición inicial y la longitud especificadas. - Función COLUMNA
Devuelve el número de la columna donde se encuentra la fórmula o el número de columna que especifiques. - Función FILA
Obtiene el número de la fila. - Función HALLAR
Encuentra la posición de un carácter o subcadena específica dentro de una cadena de texto. - Función SI
Evalúa una condición específica.
Las mejores herramientas de productividad para Office
Kutools para Excel - Le ayuda a destacar entre la multitud
Kutools para Excel Cuenta con más de 300 funciones,asegurando que lo que necesita esté siempre a un clic...
Office Tab - Habilita la lectura y edición con pestañas en Microsoft Office (incluido Excel)
- ¡Alterne entre decenas de documentos abiertos en un segundo!
- Reduzca cientos de clics del ratón cada día y despídase del síndrome del ratón.
- Aumente su productividad en un 50 % al ver y editar varios documentos simultáneamente.
- Lleva una navegación eficiente con pestañas a Office (incluido Excel), al estilo de Chrome, Edge y Firefox.