J'ai une feuille de calcul Google dans laquelle une personne ajoute un nom par ligne dans une colonne définie (B). J'ai besoin de générer une chaîne comme "<p>Adam - Becky - John - Robert</p>
" dans n seul cellule avec des noms classés par ordre alphabétique.
Je peux trier les noms (dans la deuxième feuille) avec la formule:
=sort(Sheet1!B:B, 1, TRUE)
Mais comment puis-je concaténer ces noms dans une autre cellule (dans la première feuille)?
J'ai trouvé une autre solution grâce à cet article dans les forums d'assistance de Google .
=arrayformula(concatenate(Proper(unique(upper(query(B2:B31,"select B where B!='' order by B asc",0))))&" - "))
qui capitalise également chaque nom (unique).
Après cela, je génère mon <p>
avec ceci:
="<p>- "&D10&"</p>"
(J'ai ajouté le trait d'union au début car j'aurai un trait d'union à la fin)
Utilisez la fonction JOIN ():
=join(" - ",sort(Sheet1!B:B, 1, TRUE))
SORT () renvoie un tableau de valeurs. JOIN () concatène un tableau avec une chaîne de jointure, dans ce cas "-" sans les guillemets.