Supprimer tableaux redondants

Bonjour,

J'ai un problème, j'ai créé un fichier qui me permettrait de regrouper certaines lignes selon certaines conditions ! Il regroupe en fait les lignes avec les mêmes conditions en espaçant de deux lignes à chaque fois qu'il y a une nouvelle condition ! Est ce qu'il serait possible de récupérer supprimer les tableaux qui apparaissent plus d'une fois c'est à dire les doublons ?

En gardant que les 4 premières colonnes (supprimer automatiquement les autres à partir de la cinquième), je me dis que cela est possible vu que chaque "tableau" est séparé par deux lignes !

J'espère que le fichier "test" en pièce jointe vous aidera à y voir plus clair

Merci d'avance pour votre aide

Bonjour et bienvenu(e)

Dans le fichier tu notes sur la ligne 21 "tableau à supprimer car redondant au premier dans les 4 premières colonnes" mais ici tu notes

biggi1992 a écrit :

En gardant que les 4 premières colonnes (supprimer automatiquement les autres à partir de la cinquième),

Il faut croire qui ?

On supprime toute les lignes du tableau ou on ne supprime que les colonnes à partir de la 5ème ?

Prépares un fichier avec le résultat souhaité et joins le à ton prochain message

Bonjour,

une proposition via une macro

Sub test()
    Set dico = CreateObject("Scripting.Dictionary")
    i = 2
    Do
        Key = "": l = 0
        While Cells(i, 1) <> ""
            For j = 1 To 4
                Key = Key & Cells(i, j)
            Next j
            l = l + 1
            i = i + 1
        Wend
        If dico.exists(Key) Then
            l = dico.Item(Key)
            Rows(i - l & ":" & i + 1).Delete shift:=xlUp
            i = i - l 
        Else
            dico.Add Key, l
             i = i + 2
        End If
        dl = Cells(Rows.Count, 1).End(xlUp).Row
    Loop Until i > dl
End Sub
Banzai64 a écrit :

Il faut croire qui ?

On supprime toute les lignes du tableau ou on ne supprime que les colonnes à partir de la 5ème ?

Prépares un fichier avec le résultat souhaité et joins le à ton prochain message

Bonjour,

Merci pour votre réponse,

Il faut supprimer toutes les colonnes à partir de la cinquième avant de supprimer les lignes des tableaux redondants ! Pour supprimer les colonnes, j'aurais pu en effet le faire avant de joindre le fichier, ça prêterait moins à confusion !

Merci pour votre aide

Cordialement

Bonjour,

une proposition via une macro

Sub test()
    Set dico = CreateObject("Scripting.Dictionary")
    i = 2
    Do
        Key = "": l = 0
        While Cells(i, 1) <> ""
            For j = 1 To 4
                Key = Key & Cells(i, j)
            Next j
            l = l + 1
            i = i + 1
        Wend
        If dico.exists(Key) Then
            l = dico.Item(Key)
            Rows(i - l & ":" & i + 1).Delete shift:=xlUp
            i = i - l 
        Else
            dico.Add Key, l
             i = i + 2
        End If
        dl = Cells(Rows.Count, 1).End(xlUp).Row
    Loop Until i > dl
End Sub
h2so4 a écrit :

Bonjour,

une proposition via une macro

Sub test()
    Set dico = CreateObject("Scripting.Dictionary")
    i = 2
    Do
        Key = "": l = 0
        While Cells(i, 1) <> ""
            For j = 1 To 4
                Key = Key & Cells(i, j)
            Next j
            l = l + 1
            i = i + 1
        Wend
        If dico.exists(Key) Then
            l = dico.Item(Key)
            Rows(i - l & ":" & i + 1).Delete shift:=xlUp
            i = i - l 
        Else
            dico.Add Key, l
             i = i + 2
        End If
        dl = Cells(Rows.Count, 1).End(xlUp).Row
    Loop Until i > dl
End Sub

Bonjour,

Wow ! Merci infiniment ! ça marche parfaitement ! C'est exactement ce que je veux !

Rechercher des sujets similaires à "supprimer tableaux redondants"