Concat() et Joindre.Texte()
Depuis des années, nous avions
dans Excel une fonction dont l’utilité était pour le moins douteuse, la fonction
Concatener(). En effet =concatener(B1;C1)
est équivalent à =B1&C1. Pourquoi
faire simple quand on peut faire compliqué ?
Nous avons maintenant, avec Excel
2019 et Office 365 une fonction qui remplace Concatener() tout en enrichissant
ses fonctionnalités de façon notable, la fonction Concat(). Plus, en guise de prime, une toute nouvelle fonction
– elle aussi dans le domaine de la gestion de chaînes de caractères – TextJoin().
Les fonctions Concatener() et Concat()
Dans l’exemple de la copie d’écran ci-dessous, nous avons
entré les formules dans la colonne A et reproduit le texte de ces formules en
colonne B. Comme le montrent clairement les cellules B1 et B2, il semble clair
que l’utilisation de la fonction Concatener ne semble présenter aucun
avantage par rapport au simple « & ».
La nouvelle fonction Concat()
ne fait rient de plus, comme on peut le voir en ligne 3. On peut se demander
quel est l’intérêt, à part l’économie de 4 caractères, de remplacer une fonction
inutile par une autre fonction tout aussi inutile…
Syntaxe de la fonction Joindre.Texte()
La fonction Joindre.Texte(),
en revanche, représente à la fois une réelle innovation et un apport utile.
La syntaxe est : Joindre.Texte(délimiteur;ignorer_si_vide;texte1;...)
Quand ignorer_si_vide est égal à 1 ou VRAI, on ignore les cellules vides.
La chaîne de caractères résultant ne peut pas dépasser 32 767 caractères.
Au-delà, une erreur #VALEUR!
est renvoyée.
Pour obtenir le même résultat avec cette nouvelle fonction qu’en
A1:A3, il faut entrer en A4 la formule :
=joindre.texte("
";0;C1:D1;":";E1)
Certes, ce n’est pas plus court que les formules
précédentes, mais cette fonction ouvre de nouvelles possibilités dont nous
verrons une illustration dans le prochain article.
2 Commentaire(s):
Ce qui aurait été vraiment intéressant et vraiment innovant, c'est la fonction inverse de la concaténation, c'est-à-dire le découpage, paramétré par un caractère de découpe et avec un résultat bien entendu sous forme matricielle : la fonction Split de VBA en quelque sorte ! ;))
Dans Excel 2022 ou 2025 peut-être...
By cduigou, sur 1:49 PM
Apparemment (je n'ai pas la version 2019, mais c'est ce que dit l'aide Office Support, ici https://support.office.com/en-us/article/concat-function-9b1a9a3f-94ff-41af-9736-694cbd6b4ca2) la nouvelle fonction Concat accepte en arguments des "string, or array of strings, such as a range of cells"
Autrement dit on peut (ENFIN!!!) concaténer en une seule fois une plage de cellules.
Exemple donné: "=CONCAT(B:B, C:C)" qui renvoie une seule chaîne avec la concaténation de toutes les valeurs des colonnes B et C.
By Philippe M, sur 11:34 AM
Enregistrer un commentaire
<< Accueil