Excel: Regroupement de cellules

Résolu
asazbdr Messages postés 10 Statut Membre -  
asazbdr Messages postés 10 Statut Membre -
Comment regrouper dans une seule colonne les cellules (non vides) disséminées dans un tableau excel (plusieurs colonnes et plusieurs lignes).
Merci de l'aide

5 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Avec une macro :
    Sub concatNonVide()
        Const sep As String = ", "
        Dim datas, result() As String, lig As Long, col As Long, msg As String
        If Selection.Cells.Count = 1 Then MsgBox "Sélectionner une plage svp": Exit Sub
        If Selection.Column < 2 Then MsgBox "Il faut 1 colonne libre à gauche de la sélection": Exit Sub
        msg = "Cette action va écraser " & Selection.Resize(, 1).Offset(, -1).Address
        msg = msg & vbLf & "Continuer ?"
        If MsgBox(msg, vbOKCancel, "Confirmation") = vbOK Then
            datas = Selection.Value
            ReDim result(1 To UBound(datas), 1 To 1)
            For lig = 1 To UBound(datas, 1)
                For col = 1 To UBound(datas, 2)
                    If datas(lig, col) <> "" Then result(lig, 1) = result(lig, 1) & sep & datas(lig, col)
                Next col
                If result(lig, 1) <> "" Then result(lig, 1) = Mid(result(lig, 1), Len(sep))
            Next lig
            Selection.Offset(, -1).Resize(UBound(result), 1) = result
        End If
    End Sub 


    la constante sep est le séparateur utilisé, ici ", "
    Pour un retour à la ligne remplacer par vblf

    Tous tes tableaux sont dans le même classeur ?
    Si tu as une multitude de classeur à traiter on peut faire en sorte que tu n'aies pas à copier la macro dans chacun.

    tableaux de chacun 50 à 500 colonnes
    une cellule ne peut contenir que 32000 caractères.

    Regarde si ça te va
    https://www.cjoint.com/c/JDhnKTVsbCV
    eric
    1
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour,

    Merci de déposer le fichier xls sur cjoint.com et coller ici le lien fourni.
    Qu'on sache si les cellules supposées vides le sont réellement.
    Précise aussi dessus où tu veux le résultat.
    eric
    0
  3. asazbdr Messages postés 10 Statut Membre
     
    Bonjour,
    Voici le lien:
    https://www.cjoint.com/c/JDhilkHxImH

    Remarque: le document joint n'est qu'un court extrait pris au hasard dans les tableaux que j'ai à traiter (environ 25 tableaux de chacun 50 à 500 colonnes et 50 à 150 lignes).
    Dans ces tableaux, j'ai constaté que les cellules apparaissant vides répondent 'non vides' à la formule 'Estvide'.
    Merci de votre aide.
    André
    0
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Tu aurais pu lire jusqu'à la 3ème ligne et y répondre...

      Dans ces tableaux, j'ai constaté que les cellules apparaissant vides répondent 'non vides' à la formule 'Estvide'.
      donc tu fournis un fichier non conforme contrairement à ce qui était demandé...
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. asazbdr Messages postés 10 Statut Membre
     
    Ce résultat me convient totalement; un grand merci.
    Cordialement.
    André
    0