Aller au contenu principal

Qu'est-ce que la fonction JOINDRE.TEXTE ?

Définition
La fonction JOINDRE.TEXTE assemble plusieurs valeurs texte en insérant un délimiteur choisi entre chaque élément. Elle accepte des plages entières et peut ignorer automatiquement les cellules vides.

Tu sors JOINDRE.TEXTE dès que tu dois fusionner une colonne entière en une liste lisible, sans retaper le séparateur cellule après cellule ni te soucier des trous laissés par les champs vides. C'est le réflexe à avoir chaque fois qu'une formule CONCATENER à rallonge devient plus longue à écrire qu'à relire.

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

=JOINDRE.TEXTE(délimiteur; ignorer_vide; texte1; [texte2]; ...)

Clique sur un argument pour aller à son explication.

JOINDRE.TEXTE n'est disponible qu'à partir d'Excel 2019 et Microsoft 365. Sur les versions antérieures, la formule affiche #NOM?.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

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.

1

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 CAR(10) pour un retour à la ligne dans la cellule.

2

ignorer_vide

: définis si Excel doit sauter les cellules vides

Utilise 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.

3

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.

4

[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.

Le conseil du pro
Mets ignorer_vide sur VRAI dans la grande majorité des cas : Excel saute les cellules vides et t'évite les délimiteurs en double comme « 12 rue de la Paix, , Paris ». Garde FAUX pour les rares fois où une position vide doit laisser une trace dans le résultat.
Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment créer une adresse email à partir du prénom et du nom avec la fonction JOINDRE.TEXTE

Six nouveaux arrivants commencent lundi et chacun doit avoir son adresse email avant l'ouverture des accès. Tu as le prénom en colonne A et le nom en colonne B, et il te faut une adresse au format prenom.nom@entreprise.fr sur chaque ligne. JOINDRE.TEXTE assemble les deux colonnes en intercalant le point automatiquement, et l'opérateur & vient coller le domaine à la fin.

Les étapes
  1. 1
    Dans une cellule, écris =JOINDRE.TEXTE(.
  2. 2
    En 1er argument : saisis le séparateur ".". Tu ne l'écris qu'une seule fois et Excel le glisse tout seul entre chaque texte que tu listes ensuite, là où CONCAT t'obligerait à le retaper à la main entre chaque cellule.
  3. 3
    En 2ᵉ argument : saisis VRAI pour qu'Excel ignore les cellules vides. Si un nom manque sur une ligne, tu récupères le prénom seul au lieu d'une adresse qui commence par un point orphelin.
  4. 4
    En 3ᵉ argument : clique sur la cellule du prénom, A2. C'est le premier morceau que la fonction assemble, donc celui qui ouvre l'adresse.
  5. 5
    En 4ᵉ argument : clique sur la cellule du nom, B2. La fonction le colle juste après le prénom en intercalant le point, ce qui produit Marie.Dupont.
  6. 6
    Ferme la parenthèse, complète par &"@entreprise.fr", puis appuie sur Entrée. Le & agit après l'assemblage, donc le domaine s'accroche au bout et le point ne se retrouve pas devant l'arobase.
Au final, ta formule devrait ressembler à ça :=JOINDRE.TEXTE("."; VRAI; A2; B2)&"@entreprise.fr"
Explication
La fonction colle Marie et Dupont en glissant le point toute seule entre les deux, puis le & accroche le domaine derrière, ce qui donne Marie.Dupont@entreprise.fr. Attention, JOINDRE.TEXTE recopie le texte tel qu'il est saisi et ne le passe pas en minuscules : si tu veux marie.dupont@entreprise.fr, enrobe l'assemblage dans MINUSCULE. Il ne te reste plus qu'à copier la formule vers le bas pour les six lignes.
Exemple 2

Comment transformer une colonne entière en une phrase avec la fonction JOINDRE.TEXTE

Un client attend son email récapitulatif et tu ne vas pas retaper sa commande à la main à chaque fois. Les produits sont listés les uns sous les autres en colonne A, et tu veux une phrase propre, séparée par des virgules, dans une seule cellule à copier-coller dans ton message. JOINDRE.TEXTE avale la plage complète et rend la liste déjà ponctuée.

Les étapes
  1. 1
    Dans une cellule, écris =JOINDRE.TEXTE(.
  2. 2
    En 1er argument : saisis le séparateur ", ". La virgule et l'espace que tu places entre ces guillemets se répètent entre chaque élément, donc c'est ici que se règle la ponctuation de la liste.
  3. 3
    En 2ᵉ argument : saisis VRAI pour sauter les cellules vides de la plage. Si une ligne de la commande reste blanche, tu évites ainsi deux virgules qui se suivraient au milieu de la phrase.
  4. 4
    En 3ᵉ argument : sélectionne la plage des produits, A2:A5. La fonction lit les cellules de haut en bas, dans l'ordre du tableau, et t'épargne de citer chaque référence une par une comme le ferait l'opérateur &.
  5. 5
    Ferme la parenthèse et appuie sur Entrée.
Voici la formule que tu obtiens à la fin :=JOINDRE.TEXTE(", "; VRAI; A2:A5)
Explication
Une plage entière tient dans un seul argument : la fonction parcourt les quatre cellules et insère la virgule entre chacune, sans jamais en mettre après le dernier produit. Si le client commande vingt références, tu étends la plage à A2:A21 et la formule suit, alors qu'il faudrait citer les vingt cellules une par une avec l'opérateur &.
Exemple 3

Comment fusionner des colonnes en sautant les cellules vides avec la fonction JOINDRE.TEXTE

Tu prépares un publipostage et une adresse mal formée, c'est un courrier qui revient. Ton fichier stocke la rue, le complément, la ville et le code postal dans quatre colonnes, sauf que le complément est vide une fois sur deux et que les assemblages classiques laissent alors une virgule toute seule au milieu. JOINDRE.TEXTE reconstruit l'adresse complète et saute les cellules vides sans que tu aies à tester quoi que ce soit.

Les étapes
  1. 1
    Dans une cellule, écris =JOINDRE.TEXTE(.
  2. 2
    En 1er argument : saisis le séparateur ", ". Excel ne l'ajoute qu'entre deux morceaux réellement présents, jamais avant le premier ni après le dernier.
  3. 3
    En 2ᵉ argument : saisis VRAI pour que la fonction saute les cellules vides. C'est l'argument qui règle tout le problème, car avec FAUX le complément absent compterait comme un texte à part entière et donnerait 12 rue de la Paix, , Paris.
  4. 4
    En 3ᵉ argument : sélectionne la plage A2:D2, qui couvre les quatre colonnes de la ligne, de la rue au code postal. Comme la sélection est horizontale, la fonction lit de gauche à droite et respecte l'ordre des colonnes.
  5. 5
    Ferme la parenthèse et appuie sur Entrée.
Une fois les morceaux assemblés, ta formule donne ça :=JOINDRE.TEXTE(", "; VRAI; A2:D2)
Explication
La première adresse n'a pas de complément et le résultat enchaîne pourtant directement sur la ville, sans virgule en double : c'est VRAI qui fait le ménage. La deuxième ligne, elle, garde Bât. C puisque la cellule est remplie. La même formule gère les deux cas, alors qu'il faudrait un SI par colonne pour obtenir ce résultat avec l'opérateur &.
Exemple 4

Comment lister seulement les lignes qui remplissent une condition en combinant SI et la fonction JOINDRE.TEXTE

Une tournée est prévue à Paris la semaine prochaine et il te faut la liste des clients concernés, en une ligne, à déposer dans le compte rendu. Ton tableau mélange toutes les villes : le nom du client en colonne A, la ville en colonne B. SI met de côté les lignes qui ne correspondent pas, et JOINDRE.TEXTE recolle celles qui restent en une phrase ponctuée.

Les étapes
  1. 1
    Dans une cellule, écris =JOINDRE.TEXTE(.
  2. 2
    En 1er argument : saisis le séparateur ", ". Il prépare la ponctuation de la liste finale, exactement comme sur une plage classique.
  3. 3
    En 2ᵉ argument : saisis VRAI, car il est indispensable ici. SI renvoie du vide pour chaque client hors Paris, et c'est cet argument qui fait disparaître les virgules qui traîneraient à leur place. Avec FAUX, tu obtiendrais Boulangerie Lemaire, , Cabinet Renard, , Librairie Cévennes.
  4. 4
    En 3ᵉ argument : écris la condition qui filtre les lignes et referme-la, SI(B2:B6="Paris"; A2:A6; ""). Elle compare toute la colonne des villes d'un coup, garde le nom du client quand la ville vaut Paris et renvoie du vide sinon, si bien que JOINDRE.TEXTE n'a plus qu'à assembler ce qui reste.
  5. 5
    Ferme la parenthèse de la fonction JOINDRE.TEXTE et appuie sur Entrée. Celle de la fonction SI a déjà été refermée à l'étape précédente.
En mettant tout bout à bout, tu écris :=JOINDRE.TEXTE(", "; VRAI; SI(B2:B6="Paris"; A2:A6; ""))
Explication
SI renvoie d'abord une liste intermédiaire où les clients hors Paris sont remplacés par du vide, puis JOINDRE.TEXTE assemble ce qui reste. Les trois clients parisiens sortent séparés par une virgule, et les deux autres disparaissent sans laisser de trou dans la phrase. Change "Paris" en "Lyon" et la liste se réécrit toute seule.
Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les 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.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

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èreJOINDRE.TEXTECONCATCONCATENEROpé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 versionsToutes versions
Cas d'usage idéalListes avec séparateurPlages sans séparateurQuelques cellulesTexte + calculs courts
Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec JOINDRE.TEXTE

1Astuce

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.

2Astuce

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 CAR(10) comme délimiteur : =JOINDRE.TEXTE(CAR(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.

3Astuce

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(CAR(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.

Le combo gagnant
Le combo gagnant : enrobe JOINDRE.TEXTE dans SUBSTITUE pour remplacer la dernière virgule par « et ». « Pomme, Banane, Orange » devient « Pomme, Banane et Orange », le 3e argument de SUBSTITUE ciblant uniquement la dernière occurrence. Tes listes générées sonnent tout de suite plus naturelles.
FAQ

Questions fréquentes

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.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction JOINDRE.TEXTE : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir