Función TEXTJOIN en Excel para combinar texto de varias celdas

  • Compartir Este
Michael Brown

El tutorial muestra cómo utilizar la función TEXTJOIN para combinar texto en Excel con ejemplos prácticos.

Hasta hace poco, había dos métodos predominantes para unir el contenido de las celdas en Excel: el operador de concatenación y la función CONCATENAR. Con la introducción de TEXTJOIN, parece que ha aparecido una alternativa más potente, que permite unir texto de forma más flexible incluyendo cualquier delimitador intermedio. Pero, en realidad, ¡hay mucho más!

    Función TEXTJOIN de Excel

    TEXTJOIN en Excel combina cadenas de texto de múltiples celdas o rangos y separa los valores combinados con cualquier delimitador que especifiques. Puede ignorar o incluir celdas vacías en el resultado.

    La función está disponible en Excel para Office 365, Excel 2021 y Excel 2019.

    La sintaxis de la función TEXTJOIN es la siguiente:

    TEXTJOIN(delimitador, ignorar_vacío, texto1, [texto2], ...)

    Dónde:

    • Delimitador (obligatorio) - es un separador entre cada valor de texto que se combina. Normalmente, se suministra como una cadena de texto encerrada entre comillas dobles o una referencia a una celda que contiene una cadena de texto. Un número suministrado como delimitador se trata como texto.
    • Ignorar_vacío (obligatorio) - Determina si se ignoran o no las celdas vacías:
      • TRUE - ignora las celdas en blanco.
      • FALSE - incluir celdas vacías en la cadena resultante.
    • Texto1 (obligatorio) - primer valor a unir. Puede suministrarse como una cadena de texto, una referencia a una celda que contenga una cadena o una matriz de cadenas como un rango de celdas.
    • Texto2 ... (opcional) - valores de texto adicionales que se unirán. Se permite un máximo de 252 argumentos de texto, incluyendo texto1 .

    Como ejemplo, combinemos las direcciones de las celdas B2, C2 y D2 en una sola celda, separando los valores con una coma y un espacio:

    Con la función CONCATENAR, tendrías que especificar cada celda individualmente y poner un delimitador (", ") después de cada referencia, lo que podría resultar molesto al combinar el contenido de muchas celdas:

    =CONCATENAR(A2, ", ", B2, ", ", C2)

    Con Excel TEXTJOIN, especifique el delimitador sólo una vez en el primer argumento y proporcione un rango de celdas para el tercer argumento:

    =TEXTJOIN(", ", TRUE, A2:C2)

    TEXTJOIN en Excel - 6 cosas a recordar

    Para utilizar TEXTJOIN de forma eficaz en sus hojas de trabajo, debe tener en cuenta algunos puntos importantes:

    1. TEXTJOIN es una función nueva, que solo está disponible en Excel 2019 - Excel 365. En versiones anteriores de Excel, utilice en su lugar la función CONCATENAR o el operador "&".
    2. En las nuevas versiones de Excel, también puede utilizar la función CONCAT para concatenar valores de celdas y rangos separados, pero sin opciones para delimitadores o celdas vacías.
    3. Cualquier número suministrado a TEXTJOIN para el delimitador o texto se convierte en texto.
    4. Si delimitador no se especifica o es una cadena vacía (""), los valores de texto se concatenan sin ningún delimitador.
    5. La función puede manejar hasta 252 argumentos de texto.
    6. La cadena resultante puede contener un máximo de 32.767 caracteres, que es el límite de celdas en Excel. Si se supera este límite, una fórmula TEXTJOIN devuelve el error #¡VALOR!

    Cómo unir texto en Excel - ejemplos de fórmulas

    Para comprender mejor todas las ventajas de TEXTJOIN, veamos cómo utilizar la función en situaciones reales.

    Convertir columna en lista separada por comas

    Si desea concatenar una lista vertical separando los valores por una coma, un punto y coma o cualquier otro delimitador, TEXTJOIN es la función adecuada.

    Para este ejemplo, concatenaremos las victorias y derrotas de cada equipo de la siguiente tabla. Esto se puede hacer con las siguientes fórmulas, que sólo difieren en el rango de celdas que se unen.

    Para el Equipo 1:

    =TEXTJOIN(",", FALSE, B2:B6)

    Para el Equipo 2:

    =TEXTJOIN(",", FALSE, C2:C6)

    Y así sucesivamente.

    En todas las fórmulas se utilizan los siguientes argumentos:

    • Delimitador - una coma (",").
    • Ignorar_vacío se establece en FALSE para incluir celdas vacías porque necesitamos mostrar qué partidas no se jugaron.

    Como resultado, obtendrá cuatro listas separadas por comas que representan las victorias y derrotas de cada equipo de forma compacta:

    Unir celdas con delimitadores diferentes

    Si necesita separar los valores combinados con diferentes delimitadores, puede suministrar varios delimitadores como una constante de matriz o introducir cada delimitador en una celda separada y utilizar una referencia de rango para la variable delimitador argumento.

    Supongamos que desea unir celdas que contienen partes de nombres diferentes y obtener el resultado en este formato: Apellido , Nombre Segundo nombre .

    Como puede ver, el Apellido y el Nombre están separados por una coma y un espacio (", ") mientras que el Nombre y el Segundo Nombre sólo por un espacio (" "). Por lo tanto, incluimos estos dos delimitadores en una constante de matriz {", ","} y obtenemos la siguiente fórmula:

    =TEXTJOIN({", ",""}, TRUE, A2:C2)

    Donde A2:C2 son las partes del nombre que se van a combinar.

    Como alternativa, puede escribir los delimitadores sin comillas en algunas celdas vacías (por ejemplo, una coma y un espacio en F3 y un espacio en G3) y utilizar el rango $F$3:$G$3 (tenga en cuenta las referencias absolutas de las celdas) para el comando delimitador argumento:

    =TEXTJOIN($F$3:$G$3, TRUE, A2:C2)

    Utilizando este enfoque general, puede combinar el contenido de las celdas de varias formas.

    Por ejemplo, si desea obtener el resultado en el campo Nombre Inicial del segundo nombre Apellido y, a continuación, utilizamos la función IZQUIERDA para extraer el primer carácter (la inicial) de la celda C2. En cuanto a los delimitadores, ponemos un espacio (" ") entre el Nombre y la Inicial del segundo nombre; un punto y un espacio (". ") entre la Inicial y el Apellido:

    =TEXTJOIN({" ","."}, TRUE, B2, LEFT(C2,1), A2)

    Unir texto y fechas en Excel

    En un caso específico en el que está fusionando texto y fechas, suministrar fechas directamente a una fórmula TEXTJOIN no funcionará. Como recordará, Excel almacena las fechas como números de serie, por lo que su fórmula devolverá un número que representa la fecha, como se muestra en la captura de pantalla siguiente:

    =TEXTJOIN(" ", TRUE, A2:B2)

    Para solucionar esto, es necesario convertir la fecha en una cadena de texto antes de unirla. Y aquí la función TEXTO con el código de formato deseado ("mm/dd/aaaa" en nuestro caso) resulta muy útil:

    =TEXTJOIN(" ", TRUE, A2, TEXT(B2, "mm/dd/aaaa"))

    Fusionar texto con saltos de línea

    Si desea combinar texto en Excel de forma que cada valor comience en una nueva línea, utilice CHAR(10) como delimitador (donde 10 es un carácter de salto de línea).

    Por ejemplo, para combinar texto de las celdas A2 y B2 separando los valores por un salto de línea, ésta es la fórmula que hay que utilizar:

    =TEXTJOIN(CHAR(10), TRUE, A2:B2)

    Sugerencia: para que el resultado se muestre en varias líneas, como se muestra en la captura de pantalla anterior, asegúrese de que la función Ajustar texto está activada.

    TEXTJOIN IF para fusionar texto con condiciones

    Debido a la capacidad de Excel TEXTJOIN para manejar matrices de cadenas, también puede utilizarse para combinar condicionalmente el contenido de dos o más celdas. Para hacerlo, utilice la función IF para evaluar un rango de celdas y devolver una matriz de valores que cumplan la condición a la función texto1 argumento de TEXTJOIN.

    A partir de la tabla que se muestra en la siguiente captura de pantalla, supongamos que desea recuperar una lista de Equipo 1 Para conseguirlo, anide la siguiente sentencia IF en el archivo texto1 argumento:

    IF($B$2:$B$9=1, $A$2:$A$9, "")

    En lenguaje llano, la fórmula anterior dice: Si la columna B es igual a 1, devuelve un valor de la columna A en la misma fila; en caso contrario, devuelve una cadena vacía.

    La fórmula completa para Equipo 1 toma esta forma:

    =TEXTJOIN(", ", TRUE, IF($B$2:$B$9=1, $A$2:$A$9, ""))

    De forma similar, puede obtener una lista separada por comas de los miembros de Equipo 2:

    =TEXTJOIN(", ", TRUE, IF($B$2:$B$9=2, $A$2:$A$9, ""))

    Nota. Debido a la función Arreglos dinámicos disponible en Excel 365 y 2021, esto funciona como una fórmula regular, que se muestra en la captura de pantalla anterior. En Excel 2019, debe ingresarlo como una fórmula de matriz tradicional presionando el atajo de teclado Ctrl + Shift + Enter.

    Buscar y devolver varias coincidencias en una lista separada por comas

    Como probablemente sepa, la función VLOOKUP de Excel sólo puede devolver la primera coincidencia encontrada, pero ¿qué ocurre si necesita obtener todas las coincidencias de un ID, SKU o cualquier otra cosa específica?

    Para obtener los resultados en celdas separadas, utilice una de las fórmulas descritas en Cómo hacer VLOOKUP de varios valores en Excel.

    Para buscar y devolver todos los valores coincidentes en una sola celda como una lista separada por comas, utilice la fórmula TEXTJOIN IF.

    Para ver cómo funciona en la práctica, recuperemos una lista de productos comprados por un vendedor determinado de la tabla de ejemplo que aparece a continuación. Esto puede hacerse fácilmente con la siguiente fórmula:

    =TEXTJOIN(", ", TRUE, IF($A$2:$A$12=D2, $B$2:$B$12, ""))

    Donde A2:A12 son los nombres de los vendedores, B2:B12 son los productos y D2 es el vendedor de interés.

    La fórmula anterior va a E2 y trae todas las coincidencias para el vendedor de destino en D2 (Adán). Debido al uso inteligente de referencias de celda relativas (para el vendedor de destino) y absolutas (para los nombres de vendedor y productos), la fórmula copia correctamente a las celdas de abajo y funciona bien para los otros dos vendedores también:

    Nota. Al igual que en el ejemplo anterior, esto funciona como una fórmula normal en Excel 365 y 2021, y como una fórmula CSE (Ctrl + Mayús + Intro ) en Excel 2019.

    La lógica de la fórmula es exactamente la misma que en el ejemplo anterior:

    La sentencia IF compara cada nombre en A2:A12 con el nombre de destino en D2 (Adam en nuestro caso):

    IF($A$2:$A$12=D2, $B$2:$B$12, "")

    Si la prueba lógica se evalúa como TRUE (es decir, el nombre en D2 coincide con el nombre en la columna A), la fórmula devuelve un producto de la columna B; de lo contrario, se devuelve una cadena vacía (""). El resultado de IF es la siguiente matriz:

    {"";"";"Bananas";"Apples";"";"";"";"Oranges";"";"Lemons";""}

    La matriz va a la función TEXTJOIN como el texto1 Y como TEXTJOIN está configurado para separar los valores con una coma y un espacio (", "), obtenemos esta cadena como resultado final:

    Plátanos, Manzanas, Naranjas, Limones

    Excel TEXTJOIN no funciona

    Cuando su fórmula TEXTJOIN da lugar a un error, lo más probable es que sea uno de los siguientes:

    • El error #NAME? se produce cuando TEXTJOIN se utiliza en una versión antigua de Excel en la que no se admite esta función (anterior a 2019) o cuando el nombre de la función está mal escrito.
    • El error #VALOR! se produce si la cadena resultante supera los 32.767 caracteres.
    • El error #VALOR! también puede producirse si Excel no reconoce el delimitador como texto, por ejemplo si se suministra algún carácter no imprimible como CHAR(0).

    Así es como se utiliza la función TEXTJOIN en Excel. Te doy las gracias por leer y ¡espero verte en nuestro blog la semana que viene!

    Descargas disponibles

    Ejemplos de fórmulas TEXTJOIN en Excel

    Michael Brown es un entusiasta de la tecnología dedicado y apasionado por simplificar procesos complejos utilizando herramientas de software. Con más de una década de experiencia en la industria de la tecnología, ha perfeccionado sus habilidades en Microsoft Excel y Outlook, así como en Google Sheets y Docs. El blog de Michael está dedicado a compartir su conocimiento y experiencia con otros, brindando consejos y tutoriales fáciles de seguir para mejorar la productividad y la eficiencia. Ya sea un profesional experimentado o un principiante, el blog de Michael ofrece información valiosa y consejos prácticos para aprovechar al máximo estas herramientas de software esenciales.