Comprendre la fonction Excel TEXTJOIN
TEXTJOIN est une fonction d'Excel qui permet de concaténer (joindre) des chaînes de texte issues de différentes cellules ou directement saisies, en utilisant un délimiteur spécifique. Elle est particulièrement utile pour structurer des données et générer des rapports clairs et lisibles. Contrairement à la simple concaténation avec &, TEXTJOIN offre plus de contrôle sur le formatage du texte final.
Syntaxe de TEXTJOIN
La syntaxe de la fonction est la suivante :
=TEXTJOIN(délimiteur, ignorer_vide, texte1, [texte2], ...)
- délimiteur : C'est le caractère ou la chaîne de caractères qui sera inséré entre chaque chaîne de texte à concaténer. Il peut s'agir d'une virgule, un espace, un tiret, ou n'importe quelle autre séquence de caractères. Il doit être entouré de guillemets (" ").
- ignorer_vide : Cet argument est un booléen (VRAI ou FAUX) qui indique si les cellules vides doivent être ignorées ou non.
VRAIignore les cellules vides,FAUXles inclut en insérant le délimiteur à leur place. - texte1, [texte2], ... : Ce sont les chaînes de texte à concaténer. Elles peuvent être des références de cellules (A1, B2, etc.), des plages de cellules (A1:A10), ou du texte directement saisi entre guillemets ("texte"). Vous pouvez spécifier jusqu'à 252 arguments de texte.
Disponibilité de TEXTJOIN
La fonction TEXTJOIN est disponible dans Excel 2019 et les versions ultérieures, ainsi que dans Microsoft 365. Si vous utilisez une version antérieure d'Excel, vous devrez utiliser une autre méthode pour concaténer du texte avec des séparateurs (voir la section sur les alternatives).
Exemples pratiques d'utilisation de TEXTJOIN
Voici quelques exemples concrets pour illustrer l'utilisation de TEXTJOIN dans différentes situations.
Exemple 1 : Concaténer une liste de noms avec des virgules
Imaginez que vous avez une liste de noms dans les cellules A1 à A5 et que vous souhaitez les concaténer en une seule chaîne de texte, séparés par des virgules.
- Dans une cellule vide (par exemple, B1), entrez la formule suivante :
=TEXTJOIN(", ", VRAI, A1:A5) - Excel concaténera les noms de A1 à A5, en insérant une virgule et un espace entre chaque nom. L'argument
VRAIgarantit que les cellules vides éventuelles dans la plage A1:A5 seront ignorées.
Exemple concret:
Si les cellules A1 à A5 contiennent respectivement "Jean", "Marie", "", "Pierre", "Sophie", la cellule B1 affichera : "Jean, Marie, Pierre, Sophie".
Exemple 2 : Créer une adresse e-mail à partir de différentes cellules
Supposons que vous ayez le nom d'utilisateur dans la cellule A1 et le nom de domaine dans la cellule B1, et que vous souhaitiez créer une adresse e-mail complète dans la cellule C1.
- Dans la cellule C1, entrez la formule suivante :
=TEXTJOIN("@", VRAI, A1, B1)
Exemple concret:
Si A1 contient "utilisateur" et B1 contient "exemple.com", C1 affichera : "utilisateur@exemple.com".
Exemple 3 : Générer une phrase à partir de mots éparpillés
Vous pouvez utiliser TEXTJOIN pour assembler des mots individuels stockés dans différentes cellules afin de former une phrase cohérente.
- Par exemple, si les cellules A1 à A5 contiennent respectivement "Le", "chat", "est", "sur", "le", vous pouvez utiliser la formule suivante dans une cellule vide :
=TEXTJOIN(" ", VRAI, A1:A5)
Exemple concret:
La cellule affichera : "Le chat est sur le".
Exemple 4 : Concaténer des données avec plusieurs séparateurs
Il est possible d'utiliser plusieurs séparateurs en les incluant dans la chaîne de délimiteur. Par exemple, pour concaténer une date au format jj/mm/aaaa à partir de trois cellules contenant le jour, le mois et l'année respectivement :
- Si A1 contient le jour, B1 le mois, et C1 l'année, utilisez la formule suivante :
=TEXTJOIN("/", VRAI, A1, B1, C1)
Exemple concret:
Si A1 contient "25", B1 contient "12", et C1 contient "2023", la cellule affichera : "25/12/2023".
Alternatives à TEXTJOIN pour les anciennes versions d'Excel
Si vous utilisez une version d'Excel antérieure à 2019, vous ne disposez pas de la fonction TEXTJOIN. Voici quelques alternatives :
1. Concaténation avec l'opérateur &
Vous pouvez utiliser l'opérateur & pour concaténer des chaînes de texte, en insérant manuellement les délimiteurs entre chaque chaîne. Cette méthode est plus laborieuse et moins flexible que TEXTJOIN.
Exemple:
Pour reproduire l'exemple 1 ci-dessus (concaténer des noms avec des virgules), vous pouvez utiliser la formule suivante :
=A1&", "&A2&", "&A3&", "&A4&", "&A5
Cette formule devient rapidement complexe et difficile à gérer si vous avez un grand nombre de cellules à concaténer.
2. La fonction CONCATENER
La fonction CONCATENER permet de joindre plusieurs chaînes de texte. Elle est similaire à l'opérateur &, mais elle est plus explicite et peut accepter jusqu'à 255 arguments.
Exemple:
Pour reproduire l'exemple 1 ci-dessus, vous pouvez utiliser la formule suivante :
=CONCATENER(A1,", ",A2,", ",A3,", ",A4,", ",A5)
Comme pour l'opérateur &, vous devez insérer manuellement les délimiteurs entre chaque chaîne.
3. Utiliser une fonction personnalisée (VBA)
Si vous avez besoin de concaténer fréquemment du texte avec des séparateurs dans une ancienne version d'Excel, vous pouvez créer une fonction personnalisée en utilisant VBA (Visual Basic for Applications). Cette approche est plus avancée, mais elle vous permet de créer une fonction similaire à TEXTJOIN.
Exemple de code VBA :
Function ConcatAvecSeparateur(delimiteur As String, ParamArray textes() As Variant) As String
Dim resultat As String
Dim i As Long
resultat = ""
For i = LBound(textes) To UBound(textes)
If textes(i) <> "" Then ' Ignorer les cellules vides
If resultat <> "" Then
resultat = resultat & delimiteur
End If
resultat = resultat & textes(i)
End If
Next i
ConcatAvecSeparateur = resultat
End Function
Pour utiliser cette fonction :
- Ouvrez l'éditeur VBA (Alt + F11).
- Insérez un nouveau module (Insertion > Module).
- Collez le code VBA dans le module.
- Vous pouvez maintenant utiliser la fonction
ConcatAvecSeparateurdans votre feuille de calcul.
Exemple d'utilisation:
=ConcatAvecSeparateur(", ", A1, A2, A3, A4, A5)
Conseils et astuces pour utiliser TEXTJOIN efficacement
- Gérer les cellules vides : Utilisez l'argument
ignorer_videà bon escient. Si vous souhaitez ignorer les cellules vides, définissez-le surVRAI. Si vous souhaitez inclure le délimiteur à la place des cellules vides, définissez-le surFAUX. - Utiliser des plages de cellules : Au lieu de spécifier chaque cellule individuellement, utilisez des plages de cellules (par exemple, A1:A10) pour simplifier la formule.
- Combiner TEXTJOIN avec d'autres fonctions : Vous pouvez combiner
TEXTJOINavec d'autres fonctions Excel pour des manipulations de texte plus complexes. Par exemple, vous pouvez utiliserTEXTJOINavecSIpour concaténer du texte en fonction d'une condition. - Utiliser des références de cellules pour le délimiteur : Au lieu de saisir le délimiteur directement dans la formule, vous pouvez utiliser une référence de cellule qui contient le délimiteur. Cela vous permet de modifier facilement le délimiteur sans avoir à modifier la formule.
- Attention aux limites de caractères : Excel a une limite sur le nombre de caractères qu'une cellule peut contenir (32 767 caractères). Si vous concaténez un grand nombre de chaînes de texte, vous risquez de dépasser cette limite.
Erreurs courantes à éviter avec TEXTJOIN
- Oublier les guillemets autour du délimiteur : Le délimiteur doit toujours être entouré de guillemets (" "). Sinon, Excel interprétera le délimiteur comme une référence de cellule et renverra une erreur.
- Utiliser un délimiteur incorrect : Assurez-vous que le délimiteur que vous utilisez est celui que vous souhaitez réellement insérer entre les chaînes de texte. Une erreur de frappe dans le délimiteur peut entraîner des résultats inattendus.
- Ne pas gérer les cellules vides : Si vous ne spécifiez pas l'argument
ignorer_vide, Excel traitera les cellules vides différemment selon votre version d'Excel. Il est donc important de spécifier explicitement cet argument pour éviter des résultats inattendus. - Dépasser la limite de caractères : Soyez conscient de la limite de caractères par cellule dans Excel. Si vous concaténez un grand nombre de chaînes de texte, vous risquez de dépasser cette limite et d'obtenir une erreur.
Conclusion
La fonction TEXTJOIN est un outil précieux pour concaténer du texte avec des séparateurs dans Excel. Elle offre une flexibilité et une efficacité supérieures aux méthodes traditionnelles de concaténation. En comprenant sa syntaxe et en utilisant les conseils et astuces présentés dans cet article, vous pouvez exploiter pleinement son potentiel et simplifier vos tâches de manipulation de texte dans Excel. Même si vous utilisez une version plus ancienne d'Excel, les alternatives présentées vous permettront d'obtenir des résultats similaires, bien qu'avec un peu plus d'effort. Maîtriser TEXTJOIN vous permettra d'améliorer significativement votre productivité et la clarté de vos données dans Excel.