Cómo extraer texto entre corchetes de una celda
En el artículo de hoy te presento varias fórmulas de Excel que te ayudarán a extraer datos que se encuentran entre dos caracteres.
Puedes pensar que esto de separar texto se puede hacer con la herramienta Texto en columnas que ya te mostré en este artículo. Pues tienes razón, sí se puede. Pero si los caracteres con los que están separados los textos son diferentes, tienes que utilizar esta herramienta, como mínimo dos veces.
Para extraer el texto que se encuentra entre dos caracteres, aunque sean diferentes, te voy a mostrar una fórmula que ahorra algo de tiempo.
Estos datos que te muestro los he extraído de mi base de datos de funciones. Como ves, el nombre de cada función está encerrada entre corchetes.
Si quiero extraer solamente el nombre de la función, en la celda C2 introduciré la siguiente fórmula:
=SI.ERROR(EXTRAE(A2;ENCONTRAR(“[“;A2)+1;ENCONTRAR(“]”;A2)-ENCONTRAR(“[“;A2)-1);””)
Observa cómo la fórmula hace referencia constantemente a la celda A2 porque es ahí donde tengo el texto.
La fórmula busca en la celda A2 los corchetes de apertura y de cierre y extrae el contenido.
He utilizado la función SI.ERROR para que, en caso de que no exista alguno de los corchetes, se muestre la celda en blanco.
Si quiero extraer las funciones con los corchetes incluidos tengo que utilizar la siguiente fórmula:
=SI.ERROR(EXTRAE(A2;ENCONTRAR(“[“;A2);ENCONTRAR(“]”;A2)-ENCONTRAR(“[“;A2)+1);””)
Si comparas las dos fórmulas observarás que a la hora de extraer el texto, he eliminado el +1 del corchete de apertura y se lo he agregado a la parte del corchete de cierre. Esto lo que hace es modificar las posiciones desde donde Excel debe comenzar a extraer el texto y a finalizarla.
Por último, si lo que quiero es extraer el texto que se encuentra antes del corchete de apertura, tendría que utilizar la siguiente fórmula.
=SI.ERROR(IZQUIERDA(A2;ENCONTRAR(“[“;A2)-1);A2)
Aquí he utilizado la función IZQUIERDA para extraer el texto. La fórmula extrae desde el principio del texto hasta que se encuentra con el corchete de apertura.
Como ves, Excel es una gran herramienta para manipular texto.
Otro buen ejemplo de extracción de texto con fórmulas.
Descarga el archivo de ejemplo:
Por favor, comenta si te ha sido de utilidad.
Muy útil. No me sirvió en mi caso porque parece no funcionar cuando los caracteres son identicos como en mi ejemplo”-” y “-“.
2 – B1-4 – 3 1/2 X 9 1/4 3000FB 2.0E
yo quiero extraer el texto entre los guiones y de paso, si se puede, sin los espacios en blanco .
El resultado que busco es B1-4
Saludos.
Hola, Noel!
Ya sabes que con Excel tienes mil formas de llegar al mismo resultado…
Echa un vistazo a esta fórmula:
=EXTRAE(A2;HALLAR(“- “;A2;1)+2;HALLAR(” -“;A2;HALLAR(“-“;A2;1)+1)-HALLAR(“-“;A2;1)-1)
Tú comentas que es el mismo caracter el que delimita el texto a extraer, pero no es del todo cierto. En realidad los delimitadores son “- ” (con un espacio al final) desde el que se comienza a extraer, y un ” -“(con un espacio al principio) hasta el que se extrae. Esto también te permite eliminar los espacios innecesarios.
Espero que te sirva.
Hola, me atreví a hacerlo antes de leer el artículo y tengo que decir sonriente que lo he conseguido, aunque con una pequeña diferencia. Esta es la fórmula que usé:
=EXTRAE(A2;HALLAR(D1;A2)+1;LARGO(A2)-HALLAR(D1;A2)-1)
Corrección en la fórmula de mi comentario anterior. Evidentemente D1 es “[”
=EXTRAE(A2;HALLAR(“[“;A2)+1;LARGO(A2)-HALLAR(“[“;A2)-1)
Hola seguí, muchas gracias por este excelente articulo, hasta hoy estaba volviéndome loca, y esto ha dado en el clavo de solución para el problema que tenía, gracias ☺