Táboa de contidos
O titorial mostra como usar a función TEXTJOIN para combinar texto en Excel con exemplos prácticos.
Ata hai pouco, había dous métodos frecuentes para combinar o contido das celas en Excel: a concatenación operador e función CONCATENAR. Coa introdución de TEXTJOIN, parece que apareceu unha alternativa máis poderosa, que che permite unir texto dun xeito máis flexible, incluíndo calquera delimitador intermedio. Pero, en realidade, hai moito máis!
A función TEXTJOIN de Excel
TEXTJOIN en Excel combina cadeas de texto de varias celas ou intervalos e separa os valores combinados con calquera delimitador que vostede especifique. Pode ignorar ou incluír celas baleiras no resultado.
A función está dispoñible en Excel para Office 365, Excel 2021 e Excel 2019.
A sintaxe da función TEXTJOIN é a seguinte :
TEXTJOIN(delimitador, ignorar_baleiro, texto1, [texto2], …)Onde:
- Delimitador (obrigatorio): é un separador entre cada valor de texto que combinas. Normalmente, ofrécese como unha cadea de texto entre comiñas dobres ou unha referencia a unha cela que contén unha cadea de texto. Un número proporcionado como delimitador trátase como texto.
- Ignore_empty (obrigatorio): determina se ignorar as celas baleiras ou non:
- VERDADEIRO: ignora todas as celas en branco.
- FALSO: inclúe celas baleiras na cadea resultante.
- Texto1 (obrigatorio) - primeiro valor para unirse. Pódese proporcionar como unha cadea de texto, unha referencia a unha cela que contén unha cadea ou unha matriz de cadeas como un intervalo de celas.
- Texto2 , … (opcional) - valores de texto adicionais para estar unidos. Permítense un máximo de 252 argumentos de texto, incluíndo texto1 .
A modo de exemplo, combinemos partes de enderezos das celas B2, C2 e D2 nunha soa cela, separando os valores. cunha coma e un espazo:
Coa función CONCATENAR, tería que especificar cada cela individualmente e poñer un delimitador (", ") despois de cada referencia, o que pode resultar molesto ao combinar o contido de moitas celas. celas:
=CONCATENATE(A2, ", ", B2, ", ", C2)
Con Excel TEXTJOIN, especifica o delimitador só unha vez no primeiro argumento e proporciona un intervalo de celas para o terceiro argumento:
=TEXTJOIN(", ", TRUE, A2:C2)
TEXTJOIN en Excel: 6 cousas para lembrar
Para usar eficazmente TEXTJOIN nas túas follas de traballo, hai que ter en conta algúns puntos importantes:
- TEXTJOIN é un novo función, que só está dispoñible en Excel 2019 - Excel 365. Nas versións anteriores de Excel, use a función CONCATENAR ou "&" no seu lugar.
- Nas novas versións de Excel, tamén pode usar a función CONCAT para concatenar valores de celas e intervalos separados, pero sen opcións para delimitadores ou celas baleiras.
- Calquera número proporcionado. a TEXTJOIN para o delimitador ou texto os argumentos convértese en texto.
- Se non se especifica delimitador ou é unha cadea baleira (""), os valores de texto concatenanse sen ningún delimitador.
- A función pode xestionar ata 252 argumentos de texto.
- A cadea resultante pode conter un máximo de 32.767 caracteres, que é o límite de celas en Excel. Se se supera este límite, unha fórmula TEXTJOIN devolve o #VALOR! erro.
Como unir texto en Excel: exemplos de fórmulas
Para comprender mellor todas as vantaxes de TEXTJOIN, vexamos como usar a función en escenarios da vida real .
Converter columna en lista separada por comas
Cando buscas concatenar unha lista vertical que separe os valores por coma, punto e coma ou calquera outro delimitador, TEXTJOIN é a función correcta para usar.
Para este exemplo, concatenaremos as vitorias e as derrotas de cada equipo na seguinte táboa. Isto pódese facer coas seguintes fórmulas, que só difiren no intervalo de celas unidas.
Para o equipo 1:
=TEXTJOIN(",", FALSE, B2:B6)
Para o equipo 2:
=TEXTJOIN(",", FALSE, C2:C6)
E así por diante.
En todas as fórmulas utilízanse os seguintes argumentos:
- Delimitador - a coma (",").
- Ignore_empty está definido como FALSE para incluír celas baleiras porque necesitamos mostrar que xogos non se xogaron.
Como Como resultado, obterás catro listas separadas por comas que representan as vitorias e as derrotas de cada equipo nunha forma compacta:
Unir celas con diferentes delimitadores
Nunha situación na que precisa separar os valores combinados con diferentes delimitadores, pode proporcionar varios delimitadores como unha constante de matriz ou introducir cada delimitador nunha cela separada e use unha referencia de intervalo para o argumento delimitador .
Supoño que quere unir celas que conteñan partes de nome diferentes e obter o resultado neste formato: Apelido , Nome Segundo nome .
Como podes ver, o Apelido e o Nome están separados por unha coma e un espazo (", "), mentres que o Nome e o Segundo nome por un espazo. ("") só. Polo tanto, incluímos estes dous delimitadores nunha constante matricial {", "," "} e obtemos a seguinte fórmula:
=TEXTJOIN({", "," "}, TRUE, A2:C2)
Onde A2:C2 son as partes do nome que se combinarán.
Como alternativa, pode escribir os delimitadores sen comiñas nalgunhas celas baleiras (por exemplo, unha coma e un espazo en F3 e un espazo en G3) e utilizar o intervalo $F$3:$G$3 (por favor, teña en conta as referencias de cela absolutas) para o argumento delimitador :
=TEXTJOIN($F$3:$G$3, TRUE, A2:C2)
Ao usar este enfoque xeral, pode combinar o contido das celas en varias formas.
Por exemplo, se quere o resultado no formato Nome Inicial do medio Apelido , use a función ESQUERDA para extraer o primeiro carácter (a inicial) da célula C2. En canto aos delimitadores, poñemos un espazo (" ") entre o Primeiro e a inicial do Segundo; aun punto e un espazo (". ") entre a inicial e o apelido:
=TEXTJOIN({" ",". "}, TRUE, B2, LEFT(C2,1), A2)
Unir texto e datas en Excel
Nun caso específico cando estás a fusionar texto e datas, fornecer datas directamente a unha fórmula TEXTJOIN non funcionará. Como recordarás, Excel almacena as datas como números de serie, polo que a túa fórmula devolverá un número que representa a data como se mostra na seguinte captura de pantalla:
=TEXTJOIN(" ", TRUE, A2:B2)
Para solucionar isto, cómpre converter a data nunha cadea de texto antes de unir a ela. E aquí resulta útil a función TEXT co código de formato desexado ("mm/dd/aaaa" no noso caso):
=TEXTJOIN(" ", TRUE, A2, TEXT(B2, "mm/dd/yyyy"))
Combinar texto con saltos de liña
Se desexa combinar texto en Excel para que cada valor comece nunha nova liña, use CHAR(10) como delimitador (onde 10 é un carácter de avance de liña).
Por exemplo, para combinar texto de celas A2 e B2 que separan os valores mediante un salto de liña, esta é a fórmula a usar:
=TEXTJOIN(CHAR(10), TRUE, A2:B2)
Consello. Para que o resultado se mostre en varias liñas como se mostra na captura de pantalla anterior, asegúrate de que a función Envolver texto estea activada.
TEXTJOIN IF para combinar texto con condicións
Debido á capacidade de Excel TEXTJOIN para xestionar matrices de cadeas, tamén se pode usar para combinar condicionalmente o contido de dúas ou máis celas. Para facelo, use a función SE para avaliar un rango de celas e devolver unha matriz de valores que cumpran a condición ao argumento text1 deTEXTJOIN.
Da táboa que se mostra na captura de pantalla a continuación, supoña que queres recuperar unha lista de membros do Equipo 1 . Para logralo, aniña a seguinte instrución IF no argumento text1 :
IF($B$2:$B$9=1, $A$2:$A$9, "")
En inglés simple, a fórmula anterior di: Se a columna B é igual a 1, devolve un valor da columna A da mesma fila; se non, devolve unha cadea baleira.
A fórmula completa para Equipo 1 toma esta forma:
=TEXTJOIN(", ", TRUE, IF($B$2:$B$9=1, $A$2:$A$9, ""))
De forma similar, podes obter un Lista separada por comas dos membros do Equipo 2:
=TEXTJOIN(", ", TRUE, IF($B$2:$B$9=2, $A$2:$A$9, ""))
Nota. Debido á función de matrices dinámicas dispoñible en Excel 365 e 2021, esta funciona como unha fórmula normal, que se mostra na captura de pantalla anterior. En Excel 2019, debes introducilo como unha fórmula de matriz tradicional premendo o atallo Ctrl + Maiús + Intro.
Busca e devolve varias coincidencias nunha lista separada por comas
Como probablemente sabes, o A función BUSCAR V de Excel só pode devolver a primeira coincidencia atopada. Pero que pasa se precisas obter todas as coincidencias para un ID específico, SKU ou outra cousa?
Para producir os resultados en celas separadas, use unha das fórmulas descritas en Como buscar varios valores en Excel.
Para buscar e devolver todos os valores coincidentes nunha única cela como unha lista separada por comas, use a fórmula TEXTJOIN IF.
Para ver como funciona na práctica, recuperemos unha lista de produtos adquiridos por un determinado vendedor da táboa de mostraabaixo. Isto pódese facer facilmente coa seguinte fórmula:
=TEXTJOIN(", ", TRUE, IF($A$2:$A$12=D2, $B$2:$B$12, ""))
Onde A2:A12 son os nomes de vendedores, B2:B12 son produtos e D2 é o vendedor de interese.
A fórmula anterior vai para E2 e trae todas as coincidencias para o vendedor obxectivo en D2 (Adam). Debido ao uso intelixente de referencias de celas relativas (para o vendedor de destino) e absolutas (para os nomes e produtos do vendedor), a fórmula cópiase correctamente nas celas de abaixo e tamén funciona moi ben para os outros dous vendedores:
Nota. Do mesmo xeito que co exemplo anterior, isto funciona como unha fórmula normal en Excel 365 e 2021 e como unha fórmula CSE (Ctrl + Maiúsculas + Intro) en Excel 2019.
A lóxica da fórmula é exactamente a mesma que no exemplo anterior. exemplo anterior:
A instrución IF compara cada nome en A2:A12 co nome de destino en D2 (Adán no noso caso):
IF($A$2:$A$12=D2, $B$2:$B$12, "")
Se a proba lóxica avalía a VERDADEIRO (é dicir, o nome en D2 coincide co nome da columna A), a fórmula devolve un produto da columna B; se non, devólvese unha cadea baleira (""). O resultado de IF é a seguinte matriz:
{"";"";"Bananas";"Apples";"";"";"";"Oranges";"";"Lemons";""}
A matriz vai á función TEXTJOIN como argumento text1 . E como TEXTJOIN está configurado para separar os valores cunha coma e un espazo (", "), obtemos esta cadea como resultado final:
Plátanos, mazás, laranxas, limóns
Excel TEXTJOIN non funciona
Cando a túa fórmula TEXTJOIN produce un erro, o máis probable é queser un dos seguintes:
- #NAME? O erro ocorre cando se usa TEXTJOIN nunha versión antiga de Excel onde non se admite esta función (antes de 2019) ou cando o nome da función está mal escrito.
- #VALUE! prodúcese un erro se a cadea resultante supera os 32.767 caracteres.
- #VALUE! Tamén se pode producir un erro se Excel non recoñece o delimitador como texto, por exemplo, se fornece algún carácter non imprimible como CHAR(0).
É así como se usa a función TEXTJOIN en Excel. Grazas por ler e espero verte no noso blog a próxima semana!
Descargas dispoñibles
Exemplos de fórmulas Excel TEXTJOIN