Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Concatener une liste de longeur variable

  • Initiateur de la discussion Initiateur de la discussion Fourtet
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

F

Fourtet

Guest
Bonjour,
je vous sollicite pour résoudre le souci suivant :

Je dispose d'une colonne de prénom (A1:A23) dont je souhaite concaténer les données dans une seule cellule (A24), en les séparant par des virgules (Michel, René, Marcel...), sauf pour la dernière donnée que je souhaite voir précédée d'un "et" (Michel, René, Marcel et Maurice)

Jusqu'à là pas de pb, sauf que la longueur de ma liste de prénom varie (toutes les cellules de la colonne ne sont pas tjs remplies), donc çà se complique trop pour moi.

Quelqu'un aurait une solution ?
(je ne maitrise pas du tout VBA)

MERCI
Alan
 
Re : Concatener une liste de longeur variable

Bonjour à tous, bonjour Boisgontier

Pour éviter tous les risques d'erreur sur le séparateur, ne vaudrait-il pas mieux d'avoir:
Code:
Function concatChamp(champ As Range, sep)
   temp = Join(Application.Transpose(champ.Value), sep)
   p = InStrRev(temp, sep)  ''' sep
   concatChamp = Left(temp, p - 1) & Replace(Mid(temp, p), sep, " et ") ''' sep
End Function

A +
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…