Concaténer jusqu'à l'atteinte de 0

Résolu
Bonjour,
Je travaille sous excel.
Mes données sont confidentiels du coup je vous ai fait une table avec des données bidon!
Je souhaites concaténer mes lignes jusqu'à ce qu'une colonne contienne un zéro.
Dans mon exemple je voudrais obtenir une colonne code_barre :
1854;189
254;7541;41563;4177
44158;4411;2124
etc...
Mon fichier réel contient 365 lignes avec 30 colonnes...

Merci d'avance pour votre aide.

ps: voici une photo de mon fichier_exemple :


2 réponses

  1. Contributeur
    Bonjour,
    petite précision pour l'arrêt
    cellule=0 ou cellule vide ou cellule="" ?

    0
    1. je souhaite m'arrêter avant la cellule qui contient 0.
      0
  2. Bonjour

    Fonction personnalisée à mettre dans un Module (ALT F11 pour ouvrir l'éditeur VBA puis Insertion et Module, copier-coller la macro dans la page blanche et fermer l'éditeur
    Function concat(plageD As Range, plageF As Range)
    retour = plageD.Value
    For n = plageD.Column + 1 To plageF.Column
    If Cells(plageD.Row, n) <> 0 Then
    retour = retour & ";" & Cells(plageD.Row, n).Value
    End If
    Next n
    concat = retour
    End Function


    La fonction s'utilise dans une cellule comme tpute fonction Excel avec la syntaxe : =concat(cellule de départ;cellule d'arrivée)
    Ainsi dans ton exemple , en G2 la formule =concat(A2:F2) donnera 1854;189

    Cdlmnt

    0
    1. Merci, votre solution marche parfaitement !
      0