Concaténer jusqu'à l'atteinte de 0

Résolu
chat_ Messages postés 3 Statut Membre -  
chat_ Messages postés 3 Statut Membre -
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. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour,
    petite précision pour l'arrêt
    cellule=0 ou cellule vide ou cellule="" ?

    0
    1. chat_ Messages postés 3 Statut Membre
       
      je souhaite m'arrêter avant la cellule qui contient 0.
      0
  2. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    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. chat_ Messages postés 3 Statut Membre
       
      Merci, votre solution marche parfaitement !
      0