Fórmula para separar texto en un delimitador

Última actualización el 15/03/2025
Tiempo de lectura: 3 minutos

Actualización: una nueva función en Excel 365, la función DIVIDIR TEXTO le permite simplificar el trabajo de separar texto por fórmula.

  • El método siguiente no es para ser usado sólo si no tienes la función DIVIDIR.TEXTO en su versión de Excel.
Texto de portada dividida

Varios métodos para separar texto en un delimitador

En Excel, existen varias técnicas para separar el contenido de una celda según un delimitador.

  • Existe la técnica con la herramienta Convertir o más recientemente Power Query que ofrece opciones adicionales muy interesantes.
  • Pero gracias a funciones propagadas de Office 365 o Excel Online, es posible separar texto en un delimitador con una fórmula.

Comenzaremos con el ejemplo de esta lista de direcciones para ilustrar la técnica.

Lista de direcciones para separar en el delimitador de coma

Usando la función FILTRO.XML

La función FILTER.XML se utiliza para cortar un archivo XML respetando el XPath. ¿Vaya? ¿Qué es este galimatías? 😯

Le El formato XML es un formato de escritura., difícil de leer para los humanos, pero muy eficaz para una máquina. De hecho, hablamos de archivos estructurados cuando hablamos de archivos XML como se muestra en la imagen a continuación.

Archivo XML de ejemplo

Cada elemento de un archivo XML se caracteriza por una etiqueta, como , , ... La jerarquía entre estas etiquetas cumple con un estándar llamado XPath. Entonces el truco, se trata de construir una cadena de caracteres que integrará nuestra dirección como en una estructura XML como esta.

Fórmula para separar texto en un delimitador

Primero, construiremos la dirección en forma de archivo XML.

=" “&A2&” "

Pero este escrito no ha terminado porque el resultado es por el momento el siguiente:

Entonces, vamos a reemplazar el separador de nuestro texto, aquí la coma, por un nivel jerárquico usando la función SUSTITUIR.

=" "&SUSTITUIR(A2;",";" ")&" "

Y todo este escrito se incluirá en la fórmula FILTRE.XML con la etiqueta @// como XPathnodo.

=FILTRO.XML(" "&SUSTITUIR(A2;",";" ")&" ";"@//nodo")

Fórmula para separar texto en un delimitador

Cambiar orientación

Solo que así, la fórmula no es práctica porque el resultado se devuelve verticalmente. Para cambiar la orientación, simplemente escriba esta fórmula en la función TRANSPONER.

=TRANSPONER(FILTRO.XML(" "&SUSTITUIR(A2;",";" ")&" ";"@//nodo"))

Escribe una función de matriz dinámica horizontalmente.

Función personalizada con LAMBDA

Como la fórmula anterior sólo se puede escribir con Excel 365, en esta versión también tienes la función LAMBDA. La función LAMBDA le permite escribir sus propias funciones personalizadas. En este caso, podemos crear la función. TEXTO.SEPARADO.

Función LAMBDA para separar texto

Y con la fórmula:

=LAMBDA(miTexto;Separador;TRANSPOSE(FILTER.XML(""&SUBSTITUTE(miTexto;Separador;"
")&"";"//nodo")))

Función LAMBDA para separar texto en columnas en el administrador de nombres

Artículos relacionados

2 Comentarios

  1. CORRAO
    08/05/2022 a las 13:47

    Hola y gracias por tu sitio.

    Cuando ingreso la fórmula:

    =FILTRO.XML(""&SUBSTITUTE(A2;",";"")&"";"@//nodo")

    , tengo que quitar el @ para que no me muestre error (#VALUE) y se detenga en la primera coma que encuentre en el texto.

    Responder

    • Frédéric LE GUEN
      08/05/2022 a las 14:08

      Hola, una nueva función de Excel está en preparación y pronto estará disponible con Excel 365 y Excel Online para obtener el mismo resultado y de forma más sencilla. A seguir

      Responder

Dejar un comentario

Su dirección de correo electrónico no será publicada. Los campos necesarios están marcados con *

Este sitio usa Akismet para reducir los no deseados. Obtenga más información sobre cómo se procesan sus datos de comentarios.

Jugador Más Valioso de Microsoft 2024

Boletín informativo

1 vez al mes:
Consejos y cuestionarios

    No te enviaremos spam. Puedes darte de baja en cualquier momento.

    Fórmula para separar texto en un delimitador

    Tiempo de leer: 3 minutos
    Última actualización el 15/03/2025

    Actualización: una nueva función en Excel 365, la función DIVIDIR TEXTO le permite simplificar el trabajo de separar texto por fórmula.

    • El método siguiente no es para ser usado sólo si no tienes la función DIVIDIR.TEXTO en su versión de Excel.
    Texto de portada dividida

    Varios métodos para separar texto en un delimitador

    En Excel, existen varias técnicas para separar el contenido de una celda según un delimitador.

    • Existe la técnica con la herramienta Convertir o más recientemente Power Query que ofrece opciones adicionales muy interesantes.
    • Pero gracias a funciones propagadas de Office 365 o Excel Online, es posible separar texto en un delimitador con una fórmula.

    Comenzaremos con el ejemplo de esta lista de direcciones para ilustrar la técnica.

    Lista de direcciones para separar en el delimitador de coma

    Usando la función FILTRO.XML

    La función FILTER.XML se utiliza para cortar un archivo XML respetando el XPath. ¿Vaya? ¿Qué es este galimatías? 😯

    Le El formato XML es un formato de escritura., difícil de leer para los humanos, pero muy eficaz para una máquina. De hecho, hablamos de archivos estructurados cuando hablamos de archivos XML como se muestra en la imagen a continuación.

    Archivo XML de ejemplo

    Cada elemento de un archivo XML se caracteriza por una etiqueta, como , , ... La jerarquía entre estas etiquetas cumple con un estándar llamado XPath. Entonces el truco, se trata de construir una cadena de caracteres que integrará nuestra dirección como en una estructura XML como esta.

    Fórmula para separar texto en un delimitador

    Primero, construiremos la dirección en forma de archivo XML.

    =" “&A2&” "

    Pero este escrito no ha terminado porque el resultado es por el momento el siguiente:

    Entonces, vamos a reemplazar el separador de nuestro texto, aquí la coma, por un nivel jerárquico usando la función SUSTITUIR.

    =" "&SUSTITUIR(A2;",";" ")&" "

    Y todo este escrito se incluirá en la fórmula FILTRE.XML con la etiqueta @// como XPathnodo.

    =FILTRO.XML(" "&SUSTITUIR(A2;",";" ")&" ";"@//nodo")

    Fórmula para separar texto en un delimitador

    Cambiar orientación

    Solo que así, la fórmula no es práctica porque el resultado se devuelve verticalmente. Para cambiar la orientación, simplemente escriba esta fórmula en la función TRANSPONER.

    =TRANSPONER(FILTRO.XML(" "&SUSTITUIR(A2;",";" ")&" ";"@//nodo"))

    Escribe una función de matriz dinámica horizontalmente.

    Función personalizada con LAMBDA

    Como la fórmula anterior sólo se puede escribir con Excel 365, en esta versión también tienes la función LAMBDA. La función LAMBDA le permite escribir sus propias funciones personalizadas. En este caso, podemos crear la función. TEXTO.SEPARADO.

    Función LAMBDA para separar texto

    Y con la fórmula:

    =LAMBDA(miTexto;Separador;TRANSPOSE(FILTER.XML(""&SUBSTITUTE(miTexto;Separador;"
    ")&"";"//nodo")))

    Función LAMBDA para separar texto en columnas en el administrador de nombres

    Artículos relacionados

    Boletín informativo

    1 vez al mes:
    Consejos y cuestionarios

      No te enviaremos spam. Puedes darte de baja en cualquier momento.

      2 Comentarios

      1. CORRAO
        08/05/2022 a las 13:47

        Hola y gracias por tu sitio.

        Cuando ingreso la fórmula:

        =FILTRO.XML(""&SUBSTITUTE(A2;",";"")&"";"@//nodo")

        , tengo que quitar el @ para que no me muestre error (#VALUE) y se detenga en la primera coma que encuentre en el texto.

        Responder

        • Frédéric LE GUEN
          08/05/2022 a las 14:08

          Hola, una nueva función de Excel está en preparación y pronto estará disponible con Excel 365 y Excel Online para obtener el mismo resultado y de forma más sencilla. A seguir

          Responder

      Dejar un comentario

      Su dirección de correo electrónico no será publicada. Los campos necesarios están marcados con *

      Este sitio usa Akismet para reducir los no deseados. Obtenga más información sobre cómo se procesan sus datos de comentarios.