Concatener une liste de longeur variable

Fourtet

XLDnaute Nouveau
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
 

James007

XLDnaute Barbatruc
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 +
 

Discussions similaires

Statistiques des forums

Discussions
312 764
Messages
2 091 868
Membres
105 084
dernier inscrit
lca.pertus