VBA: Aide concatener des lignes jusqu’à la dernière ligne non vide

Bonjour, et merci de votre aide.....je suis un "bras cassé" et pourtant c'est facile.

j'ai un script qui permet de concatener des lignes jusqu’à la dernière colonne non vide,

mais je n'arrive pas a modifier le script pour faire la même chose dans l'autre sens, donc sur des lignes. Et ne rien copier si la première cellule est vide.

Je souhaite concatener comme ca, et m'arreter à la premiere cellule vide:

arthurresultat:

arthur - bebe - cuire - dimanche

bebe
cuire
dimanche
emission
fermer

mon script VBA a modifier qui fonctionne pour des lignes et pas des colonnes:

Function Concat(Source As Range, Separateur As String) As String

Dim r As Range

Application.Volatile

For Each r In Source.Parent.Range(Source, Source.Parent.Cells(Source.Row, 16384).End(xlToLeft))

Concat = Concat & r.Value & Separateur

Next r

Concat = Left(Concat, Len(Concat) - Len(Separateur))

End Function

j'appelle avec : =Concat(A1;" - ")


Merci de votre aide, c'est simple et rapide pour un pro du VBA

12classeur1.xlsx (9.20 Ko)

Bonjour,

Une proposition avec appel fonction =concatx(A:A;" - ")

Function Concatx(Source As Range, Separateur As String) As String

    Dim cell As Range

    Application.Volatile

    For Each cell In Source.Cells
        If cell = Empty Then Exit Function

        Concatx = Concatx & cell & Separateur
    Next cell

    Concatx = Left(Concatx, Len(Concatx) - Len(Separateur))

End Function

GENIAL !!!! Ca marche. j'y passé quelque heures.

Merci

Rechercher des sujets similaires à "vba aide concatener lignes derniere ligne vide"