Excel: Regroupement de cellules

Résolu/Fermé
asazbdr Messages postés 10 Date d'inscription lundi 6 avril 2020 Statut Membre Dernière intervention 21 décembre 2020 - 6 avril 2020 à 16:45
asazbdr Messages postés 10 Date d'inscription lundi 6 avril 2020 Statut Membre Dernière intervention 21 décembre 2020 - 8 avril 2020 à 10:39
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
A voir également:

5 réponses

eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
7 avril 2020 à 15:44
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
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
7 avril 2020 à 00:00
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
asazbdr Messages postés 10 Date d'inscription lundi 6 avril 2020 Statut Membre Dernière intervention 21 décembre 2020
7 avril 2020 à 10:19
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
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
Modifié le 7 avril 2020 à 13:01
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
asazbdr Messages postés 10 Date d'inscription lundi 6 avril 2020 Statut Membre Dernière intervention 21 décembre 2020
7 avril 2020 à 13:45
https://www.cjoint.com/c/JDhlSixzD0H
Désolé, je n'avait pas compris le sens de ta question.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
asazbdr Messages postés 10 Date d'inscription lundi 6 avril 2020 Statut Membre Dernière intervention 21 décembre 2020
8 avril 2020 à 10:39
Ce résultat me convient totalement; un grand merci.
Cordialement.
André
0