Nous ne connaissons que trop bien la fonction CONCATENATE pour combiner différentes chaînes ou nombres dans Excel . Il présente cependant certaines limites :
1. Les arguments doivent être séparés par des virgules.
2. Cette fonction ne peut pas obtenir d'objets dans une plage pour effectuer une union.
3. Il n’est pas prévu d’ajouter un séparateur.
Avec ces inconvénients, une nouvelle fonction a été introduite dans Excel 2016 appelée TEXTJOINT, qui remplit la même fonction que la fonction CONCATENATE mais plus efficacement.
Description de la fonction TEXTJOIN
La fonction TEXTJOIN joint le texte de plusieurs plages et/ou chaînes, y compris un séparateur entre les valeurs de texte jointes. Si le délimiteur est une chaîne de texte vide, cette fonction concatènera effectivement les plages.
Syntaxe de la fonction TEXTJOIN
Cette fonction a la syntaxe suivante :
TEXTJOIN(délimiteur, ignore_empty, text1, [text2], …)
Analysons la syntaxe ci-dessus :
- Le délimiteur est un caractère inséré entre des textes combinés. Par exemple, le prénom et le nom d'une personne sont combinés avec un délimiteur « _ » (trait de soulignement) pour identifier facilement le nom et éviter les espaces dans la chaîne. Dans cet exemple, le trait de soulignement est un délimiteur et le texte combiné est le prénom et le nom.
- Ignorer vide est utilisé pour ignorer les cellules vides lors de la concaténation des objets à portée. Nous pouvons définir l'option pour ignorer les cellules vides en définissant la valeur TRUE pour cette option et FALSE si nous voulons des cellules vides.
- Le texte 1 est le texte à combiner, qui peut être une cellule individuelle ou une plage de cellules.
- Le texte 2 est le texte supplémentaire qui doit être combiné. Vous pouvez utiliser jusqu'à 252 arguments de texte, y compris Texte 1. Semblable à Texte 1, il peut s'agir d'une cellule individuelle ou d'une plage de cellules.
Exemple de la fonction TEXTJOIN
Vous trouverez ci-dessous quelques exemples afin que vous puissiez mieux comprendre cette fonction.
Exemple 1:
Dans cet exemple, nous avons un tableau de données qui comprend le prénom, le nom et l'état de résidence de chaque personne. Ici, nous utiliserons la fonction TEXTJOIN pour créer un identifiant unique pour chaque personne en combinant le prénom, le nom et l'état. La formule utilise un trait de soulignement comme délimiteur, définit le deuxième argument sur TRUE afin qu'il n'y ait pas de cellules vides et la plage A2:C2 est la plage connectée.

Faites glisser la formule dans la cellule D2, vous obtiendrez l'identifiant de chaque personne.
Exemple 2 :
Dans cet exemple, dans le même tableau de données ci-dessus, nous trouvons une liste de tous les noms de personnes dans l'état de Los Angeles en utilisant deux fois la fonction TEXTJOIN. Utilisez d'abord la fonction TEXTJOIN combinée à la fonction IF pour rechercher les personnes qui correspondent aux conditions ci-dessus, c'est-à-dire les personnes qui vivent dans l'État de Los Angeles. Le résultat renverra le nom complet de la personne. Lorsque nous ferons glisser la formule vers le bas, la colonne sera remplie avec son nom complet. Si vous vivez dans un autre État, cette case sera laissée vide.

Ensuite, nous utiliserons à nouveau la fonction TEXTJOIN pour obtenir la liste dans une cellule séparée par des virgules. Pour ce faire, nous écrirons la formule suivante dans la cellule B2.
= TEXTEJOIN (", VRAI, D5:D13)
Comme le montre l'image ci-dessous :

Le résultat sera une liste de noms séparés par des virgules, comme indiqué ci-dessous :

Les cellules vides seront omises de la chaîne combinée car nous définissons l'option deux sur TRUE.
Exemple 3 :
Nous pouvons utiliser la fonction TEXTJOIN pour créer des phrases à saisie semi-automatique. Utilisez-le par exemple pour rédiger des commentaires sur un relevé de notes afin de savoir à quelle classe appartient l'élève.
Dans l'exemple ci-dessous, nous allons créer une table LOOKUP pour trouver la note correspondante de l'élève et renvoyer les commentaires à l'aide de la fonction TEXTJOIN. Le tableau ci-dessous contient des informations sur la plage de scores et la classe correspondant à cette plage de scores.

La formule RECHERCHE est la suivante :
= RECHERCHE (F4, L5 : L8, N5 : N8)
Comme nous savons que la fonction LOOKUP a au moins trois arguments, le premier est la valeur de recherche, F4 dans cet exemple. Le deuxième argument est la plage de recherche, c'est-à-dire L5:L8 dans cette formule et le dernier argument est la plage de retour qui est N5:N8 dans la formule. La formule recherche donc le point dans la première colonne (colonne L) et renvoie la valeur de la colonne N.
La formule récupère les informations du tableau suivant situé entre E3:F5.

La formule de recherche évoquée dans le paragraphe précédent est présente dans la cellule F5 et renvoie une note de C pour le score 34. Nous allons maintenant utiliser la fonction TEXTJOIN pour créer un commentaire pouvant être placé dans les rapports.
Supposons que nous voulions une phrase comme celle-ci :
[Nom du candidat], vous avez obtenu [notes] et votre note est [Note].
Nous aurons la formule suivante :
=TEXTJOIN(" ",TRUE,F3,"Vous avez réussi",F4,"score, classement",F5,".")
Dans cette formule :
1. Le premier argument est un délimiteur défini sur un espace (« »), le faisant ressembler à une phrase.
2. Le deuxième argument est défini sur TRUE comme d'habitude.
3. F3 est le nom de l'élève
4. La partie suivante « Vous réussissez » restera la même pour le cas de chaque élève.
5. Vient ensuite F4, la note de l'élève.
6. L'argument qui suit la partie fixe restera le même dans tous les cas.
7. Le deuxième argument est la classe dans la cellule F5.
8. Le dernier argument est le signe de ponctuation qui représente la fin de la phrase.
Je vous souhaite du succès !
En savoir plus :