La función EXTRAE de Excel
Excel tiene varias funciones para manipular texto. La función EXTRAE devuelve una cadena tomada del interior de otra cadena mayor. Una «cadena» de texto en Excel es simplemente cualquier texto dentro de una celda o entre comillas en una función. Mientras que IZQUIERDA y DERECHA devuelven los caracteres del extremo izquierdo y del derecho, EXTRAE devuelve texto del medio de la cadena. Te ayuda a quitar caracteres innecesarios para quedarte solo con la parte que importa.
> Los textos de ejemplo se mantienen en inglés a propósito: la lección consiste en contar caracteres, y traducirlos cambiaría todos los resultados.
Sintaxis de la función EXTRAE
La función EXTRAE de Excel devuelve un texto de una longitud determinada tomado del interior de una cadena (ni del principio ni del final). Admite tres argumentos:
=EXTRAE(texto; posición_inicial; núm_de_caracteres)
- texto: la cadena original, como referencia de celda o como cadena entre comillas.
- posición_inicial: el número del carácter donde empieza el texto que quieres (el primero es 1, el segundo es 2, etc.).
- núm_de_caracteres: cuántos caracteres extraer de la cadena original.
Ejemplos
=EXTRAE("Some text"; 3; 5)
La función anterior devuelve la cadena "me te". Aquí tienes la explicación:
=EXTRAE("Some text")
------123456789
--------12345
Empezamos a contar en el carácter 3 de la cadena original y tomamos cinco caracteres (el espacio incluido), así que la función devuelve "me te".
Imagina que la celda A1 contiene el texto "Excel Exercises". La función =EXTRAE(A1; 3; 7) devolvería "cel Exe", como se ve abajo.
"Excel Exercises"
-123456789...
---1234567
Más ejemplos de la función EXTRAE
La función EXTRAE funciona con un argumento de texto entre comillas o con una referencia de celda. Abajo tienes algunos ejemplos con una referencia de celda.
| A | B | C | D | |
| 1 | NAME | ID | AGE | SALES |
| 2 | Bob | 1234 | 32 | 5,000 |
| 3 | Jennifer | 5678 | 45 | 7,250 |
=EXTRAE(A3; 2; 5)
Esta fórmula devolvería "ennif".
Jennifer 12345678 -12345=EXTRAE(D1; 2; 2)
Esta función devolvería "AL".
SALES 12345 -12¿Cuándo devuelve EXTRAE una cadena vacía?
La función EXTRAE devuelve una cadena vacía si el segundo argumento (la posición inicial) es mayor que la longitud de la cadena original. Por ejemplo, =EXTRAE("hello"; 6; 2) devolvería una cadena vacía porque "hello" no tiene un sexto carácter.
=EXTRAE(A2; 4; 2) con la tabla de arriba también devolvería vacío, porque el texto de la celda A2 no tiene un cuarto carácter.Usar EXTRAE con otras funciones de Excel
Como cualquier función de Excel que admite números como argumentos, EXTRAE puede recibir otras funciones que devuelvan números.
Fíjate en este ejemplo, donde usamos la función LARGO como argumentos de EXTRAE:
=EXTRAE("Excel Exercises"; LARGO("Hello"); LARGO("cell"))
Hello 12345 cell 1234La primera función LARGO devuelve 5 y la segunda devuelve 4, así que EXTRAE equivale a =EXTRAE("Excel Exercises"; 5; 4), que devolvería "l Ex".
"Excel Exercises"
-123456789...
-----1234
Combinar LARGO y EXTRAE en Excel
La función EXTRAE se puede combinar con otras, como LARGO, para separar caracteres que no quieres de una cadena.
La tabla del ejemplo anterior está bien repartida en columnas para el nombre, el id., la edad y las ventas. Imagina ahora que tu jefe te manda un archivo con una sola cadena por empleado que contiene el id., el nombre y la edad, todo en la misma celda:
| A | |
| 1 | 1234 Bob 32 |
| 2 | 5678 Jennifer 45 |
¿Cómo escribes una función reutilizable que extraiga el nombre de cada empleado?
Sabes que la longitud de toda la cadena de A1 es =LARGO(A1). También sabes que el nombre siempre empieza en la sexta posición (por el id. de 4 dígitos más el espacio) y que hay 8 caracteres en cada cadena que NO quieres (el id., la edad y dos espacios).
Por tanto, puedes escribir esta función, que devuelve "Bob" al aplicarla a A1 y "Jennifer" al aplicarla a A2:
=EXTRAE(A1; 6; (LARGO(A1)-8))
¡Sigue con los ejercicios de práctica de EXTRAE! →Imágenes referenciadas
- https://excelexercises.com/logo2.png
- https://excelexercises.com/excel-functions/excelImages/logoGreenWhite.png