JOINDRE.TEXTE (TEXTJOIN en anglais) te permet d'assembler plusieurs morceaux de texte en insérant automatiquement un séparateur de ton choix entre chaque élément. C'est l'arme secrète pour fusionner des colonnes sans te battre avec des formules à rallonge : tu décris le délimiteur une fois, tu pointes ta plage, et Excel assemble tout en une seule cellule.
Concrètement, c'est elle qui génère des adresses email à partir de prénoms et noms en colonne, compile des listes de produits commandés pour un email récapitulatif, fusionne des composants d'adresse en ignorant les champs vides, ou construit des clauses SQL dynamiques depuis une colonne d'IDs. Fini les copier-coller répétitifs et les formules CONCATENER cellule par cellule.
Syntaxe de la fonction JOINDRE.TEXTE
=JOINDRE.TEXTE(délimiteur; ignorer_vide; texte1; [texte2]; ...)JOINDRE.TEXTE n'est disponible qu'à partir d'Excel 2019 et Microsoft 365. Sur les versions antérieures, la formule affiche #NOM?.
Comprendre chaque paramètre de la fonction JOINDRE.TEXTE
L'ordre compte beaucoup ici, et il surprend souvent : tu commences par dire quel délimiteur coller, puis si tu sautes les vides, et seulement après tu pointes tes textes. Beaucoup tapent leur plage en premier par réflexe et récupèrent une erreur.
Les trois premiers arguments sont obligatoires, le reste ([texte2], [texte3]...) est facultatif et te sert à empiler plusieurs plages ou à glisser du texte fixe entre deux blocs.
délimiteur
: le caractère ou la chaîne de caractères insérée entre chaque élément assembléÇa peut être une virgule ", ", un tiret "-", un point-virgule ";", un espace " ", ou même une chaîne vide "" pour coller les textes sans séparation.
Quelques délimiteurs courants : ", " pour des listes, " - " pour des références, " | " pour des options séparées, "@" pour construire la partie locale d'une adresse email, ou CARACT(10) pour un retour à la ligne dans la cellule.
Astuce : Tu peux mélanger plages et texte fixe dans la même formule. Par exemple : =JOINDRE.TEXTE(" "; VRAI; "M."; A1; B1) pour créer M. Jean Dupont à partir de cellules séparées.
ignorer_vide
: définis si Excel doit sauter les cellules videsUtilise VRAI pour ignorer automatiquement les cellules vides (recommandé dans 90 % des cas), ou FAUX pour les inclure et conserver les délimiteurs successifs.
Avec VRAI, "Pomme" + "" + "Banane" donne "Pomme, Banane". Avec FAUX, le résultat est "Pomme, , Banane" avec un double délimiteur au milieu.
texte1
: le premier texte ou la première plage à assemblerÇa peut être une cellule unique comme A1, une plage comme A1:A10, ou même du texte direct entre guillemets comme "Bonjour". C'est l'avantage décisif de JOINDRE.TEXTE sur CONCATENER : elle accepte les plages entières, ce qui évite de lister chaque cellule une par une.
[texte2], [texte3], ...
: tu peux ajouter jusqu'à 252 arguments supplémentaires(facultatif)Pratique quand tu veux combiner plusieurs plages ou intercaler du texte fixe à certains endroits. Sépare chaque argument par un point-virgule, comme d'habitude dans Excel.
Pas envie d'écrire la formule JOINDRE.TEXTE à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
RH : créer des emails professionnels automatiquement
Tu travailles aux ressources humaines et tu dois générer les adresses email de 50 nouveaux employés. Tu as leurs prénoms et noms dans des colonnes séparées. Plutôt que de les taper un par un, JOINDRE.TEXTE assemble les deux colonnes avec le délimiteur . et ajoute le domaine en troisième argument.
| A | B | C | |
|---|---|---|---|
| 1 | Prénom | Nom | Email généré |
| 2 | marie | dupont | marie.dupont@entreprise.fr |
| 3 | thomas | martin | thomas.martin@entreprise.fr |
| 4 | sophie | bernard | sophie.bernard@entreprise.fr |
=JOINDRE.TEXTE("."; FAUX; A2; B2; "@entreprise.fr")La fonction colle le prénom, le nom et le domaine en intercalant un point entre les deux premiers, ce qui produit marie.dupont@entreprise.fr en une seule passe. Tu peux ensuite copier la formule vers le bas pour toute ta liste. On choisit FAUX ici car aucune cellule n'est vide dans cette construction.
Astuce de pro : Enveloppe dans MINUSCULE() pour forcer les minuscules si tes données contiennent des majuscules : =JOINDRE.TEXTE("."; FAUX; MINUSCULE(A1); MINUSCULE(B1); "@entreprise.fr").
Commercial : créer une liste de produits commandés
Tu es commercial et tu dois envoyer un email récapitulatif avec la liste des produits qu'un client a commandés. Tes produits sont listés en colonne, et tu veux créer une phrase propre pour ton message en une seule cellule.
| A | |
|---|---|
| 1 | Produits commandés |
| 2 | Laptop Dell XPS 15 |
| 3 | Souris sans fil Logitech |
| 4 | Clavier mécanique |
| 5 | Écran 27 pouces |
=JOINDRE.TEXTE(", "; VRAI; A2:A5)Ici, la fonction prend toute la plage en un seul argument et insère une virgule-espace entre chaque élément. Si un produit est absent (cellule vide), le paramètre VRAI fait disparaître automatiquement la virgule en trop. Si le client commande 20 produits, il suffit d'étendre la plage.
Data analyst : créer des filtres SQL dynamiques
Tu es data analyst et tu dois générer une clause SQL WHERE IN pour filtrer plusieurs IDs clients. Tes IDs sont en colonne et tu veux construire la syntaxe automatiquement sans copier-coller chaque valeur.
| A | |
|---|---|
| 1 | ID Client |
| 2 | 1024 |
| 3 | 2048 |
| 4 | 3072 |
| 5 | 4096 |
="WHERE client_id IN (" & JOINDRE.TEXTE(","; VRAI; "'" & A2:A5 & "'") & ")"La formule encadre chaque ID avec des guillemets simples via la concaténation, puis JOINDRE.TEXTE les assemble avec une virgule, et l'opérateur & ajoute le début et la fin de la clause. Cette technique s'adapte à n'importe quel nombre d'IDs et fonctionne aussi bien pour PostgreSQL, MySQL ou tout autre système de base de données.
Gestionnaire de données : fusionner des adresses avec gestion des vides
Tu es gestionnaire de données et tu dois créer des adresses complètes à partir de plusieurs colonnes (rue, complément, ville, code postal). Le problème : certaines adresses n'ont pas de complément d'adresse, et tu veux éviter les virgules en double.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Rue | Complément | Ville | CP | Adresse complète |
| 2 | 12 rue de la Paix | Paris | 75001 | 12 rue de la Paix, Paris, 75001 | |
| 3 | 8 avenue Victor Hugo | Bât. C | Lyon | 69003 | 8 avenue Victor Hugo, Bât. C, Lyon, 69003 |
=JOINDRE.TEXTE(", "; VRAI; A2:D2)Grâce au paramètre VRAI, la première adresse n'a pas de double virgule même si le complément est vide. La deuxième ligne inclut le complément car il est renseigné. Une seule formule s'adapte aux deux cas sans aucune condition supplémentaire.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction JOINDRE.TEXTE
Deux soucis reviennent sans cesse avec JOINDRE.TEXTE : une version d'Excel trop ancienne qui ne connaît pas la fonction (#NOM?), et un délimiteur mal écrit, soit doublé à cause des cellules vides quand tu as mis FAUX, soit oublié entre guillemets.
Le dernier cas, #VALEUR!, est plus rare : il n'apparaît que si ton assemblage dépasse les 32 767 caractères que peut tenir une cellule.
Erreur #NOM? – Fonction non reconnue
JOINDRE.TEXTE n'existe que depuis Excel 2019 et Microsoft 365. Sur une version plus ancienne, Excel ne reconnaît pas la fonction et affiche #NOM?.
Solution : Mets à jour vers Excel 2019 ou Microsoft 365. Si tu dois rester sur une version antérieure, utilise l'opérateur & avec ton délimiteur entre chaque cellule : =A1&", "&B1&", "&C1.
Délimiteurs doublés avec les cellules vides
Tu obtiens des résultats comme "Marie, , Sophie" avec des virgules doubles parce que le deuxième paramètre est réglé sur FAUX alors que ta plage contient des cellules vides.
Solution : Change le deuxième paramètre en VRAI : =JOINDRE.TEXTE(", "; VRAI; A1:A10). Excel sautera automatiquement toutes les cellules vides de ta plage.
Erreur #VALEUR! – Résultat trop long
Le résultat dépasse la limite de 32 767 caractères d'une cellule Excel. Ça arrive quand tu assembles un très grand nombre de valeurs longues.
Solution : Réduis le nombre d'éléments assemblés en une fois, ou découpe le résultat en plusieurs cellules par tranches (par exemple A1:A100 dans une cellule, A101:A200 dans une autre).
Oubli des guillemets autour du délimiteur
Écrire =JOINDRE.TEXTE(, ; VRAI; A1:A5) provoque une erreur car Excel cherche une plage nommée , plutôt qu'une virgule littérale. Sans guillemets, le délimiteur n'est pas reconnu comme du texte.
Solution : Mets toujours ton délimiteur entre guillemets : ", ", "-", " ". Même pour un délimiteur vide, écris "" avec deux guillemets.
JOINDRE.TEXTE vs CONCAT vs CONCATENER vs opérateur &
Prends JOINDRE.TEXTE dès qu'il y a un séparateur à intercaler ou des cellules vides à sauter : c'est la seule des quatre qui gère un délimiteur automatique et l'option d'ignorer les vides. CONCAT avale aussi les plages entières mais sans séparateur, donc plutôt pour coller des morceaux bout à bout.
CONCATENER et l'opérateur & t'obligent à lister chaque cellule à la main : garde-les pour deux ou trois valeurs, ou quand tu es coincé sur une version d'Excel antérieure à 2019 où JOINDRE.TEXTE n'existe pas.
| Critère | JOINDRE.TEXTE | CONCAT | CONCATENER | Opérateur & |
|---|---|---|---|---|
| Accepte les plages | ✅ Oui | ✅ Oui | ❌ Non | ❌ Non |
| Délimiteur automatique | ✅ Oui | ❌ Non | ❌ Non | ❌ Non |
| Ignore les cellules vides | ✅ Option VRAI | ❌ Non | ❌ Non | ❌ Non |
| Facilité pour listes | ⭐⭐⭐ | ⭐⭐ | ⭐ | ⭐ |
| Disponibilité | Excel 2019+ | Excel 2019+ | Toutes versions | Toutes versions |
| Cas d'usage idéal | Listes avec séparateur | Plages sans séparateur | Quelques cellules | Texte + calculs courts |
Astuces avancées avec JOINDRE.TEXTE
Créer une liste avec "et" avant le dernier élément
Pour transformer "Pomme, Banane, Orange" en "Pomme, Banane et Orange", combine =JOINDRE.TEXTE(", "; VRAI; A1:A5) avec SUBSTITUE : =SUBSTITUE(JOINDRE.TEXTE(", "; VRAI; A1:A5); ", "; " et "; NB(A1:A5)-1). Le troisième argument de SUBSTITUE cible uniquement la dernière occurrence.
Ça rend tes listes générées nettement plus naturelles dans un email ou un rapport.
Afficher chaque élément sur une ligne dans la même cellule
Pour séparer les éléments par un retour à la ligne au lieu d'une virgule, utilise CARACT(10) comme délimiteur : =JOINDRE.TEXTE(CARACT(10); VRAI; A1:A10). Active le retour à la ligne automatique sur la cellule (Accueil > Renvoyer à la ligne) pour voir le résultat.
Pratique pour un champ de notes ou un résumé multi-lignes dans un seul enregistrement.
Ajouter des numéros devant chaque élément
Avec Microsoft 365, combine SEQUENCE et JOINDRE.TEXTE pour créer une liste numérotée automatiquement : =JOINDRE.TEXTE(CARACT(10); VRAI; SEQUENCE(5) & ". " & A1:A5). Chaque élément reçoit son numéro de rang sans formule auxiliaire.
Si la liste s'allonge, il suffit d'ajuster le 5 dans SEQUENCE.
Questions fréquentes sur la fonction JOINDRE.TEXTE
Quelle est la différence entre JOINDRE.TEXTE et CONCATENER ?
JOINDRE.TEXTE accepte des plages entières comme A1:A10 et insère automatiquement un délimiteur entre chaque élément. CONCATENER doit lister chaque cellule une par une et ne gère aucun séparateur automatique.
Si tu assembles 10 cellules avec un délimiteur, JOINDRE.TEXTE se fait en un argument, CONCATENER en 19 arguments entrelacés avec le délimiteur. Pour les grandes listes, le gain de temps est considérable.
Comment ignorer automatiquement les cellules vides ?
Passe VRAI comme deuxième argument : =JOINDRE.TEXTE(", "; VRAI; A1:A10). Excel saute automatiquement toutes les cellules vides de la plage.
Avec FAUX, les cellules vides créent des délimiteurs successifs ("Pomme, , Banane"). Utilise FAUX uniquement si tu veux que les positions vides laissent une trace dans le résultat.
JOINDRE.TEXTE fonctionne-t-elle dans Google Sheets ?
Oui, Google Sheets propose la même fonction sous le nom TEXTJOIN avec une syntaxe identique. Tes formules seront compatibles entre Excel 2019+ et Google Sheets sans modification.
Peut-on utiliser plusieurs délimiteurs différents dans la même formule ?
Non, JOINDRE.TEXTE utilise un seul délimiteur pour l'ensemble de la formule. Si tu as besoin de délimiteurs différents entre certains éléments, imbrique plusieurs JOINDRE.TEXTE ou utilise l'opérateur & pour les jonctions spécifiques.
Quelle est la limite de caractères pour le résultat ?
Le résultat ne peut pas dépasser 32 767 caractères, qui est la limite d'une cellule Excel. Si tu assembles un très grand nombre de textes longs et atteins cette limite, Excel affiche #VALEUR!.
Vérifie la longueur totale estimée de tes données sources si cette erreur apparaît, et découpe en plusieurs cellules si nécessaire.
Pour aller plus loin
Les fonctions similaires : CONCATENER, CONCAT, SUBSTITUE, STXT, CHERCHE
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

