VBA - Additionner Doublon et Supprimer

Bonjour,

Je sais que tout le mond eva me dire par sur un TDC ou sur une Formule du genre NB.si ou Somme.Si .....

Mais non !! Je souhaite vraiment apprendre à le faire seulement en VBA !

Alors voilà, j'ai 4 colonne D, E, F, G. J'ai une multitude de ligne je souhaite passer sur chacune de mes lignes et toutes celles ou mes cellules (E) Cells(I, 5,) & (G) Cells(I, 7) seront identiques à une ligne qui se trouve en dessous alors on Additionne la Cellules (F) Cells(I, 6) puis on supprime la fameuse ligne identique.

Sub Bouton1_Cliquer()
Dim ligFin As Long
'Permet de savoir ma dernière ligne pleine
ligFin = Range("e" & Rows.Count).End(xlUp).Row

'Effectue une boucle qui passe sur toute les lignes
For I = 2 To ligFin
    For y = 3 To ligFin
        If Cells(I, 5) = Cells(y, 5) And Cells(I, 7) = Cells(y, 7) Then
                Cells(I, 6).Value = Cells(I, 6).Value + Cells(y, 6)
                'La je ne sais pas comment supprimer la ligne doublon..
                Rows(y).EntireRow.Delete
        End If
    Next y
Next I
End Sub

J'ai cette Formule que j'ai faite mais malheureusement je doit me tromper quelque part ça ne donne pas ce que je souhaite..

J'ai l'impression qu'il me prend pas en compte la première condition c'est bizarre !

Merci d'avance pour votre aide !

Bonjour,

Merci de joindre le fichier pour tester.

Bonjour Sebyg

Après simplification, à tester.

Sub Bouton1_Cliquer()
Dim ligFin As Long
'Permet de savoir ma dernière ligne pleine
ligFin = Range("e" & Rows.Count).End(xlUp).Row

'Effectue une boucle qui passe sur toute les lignes
For I = 2 To ligFin
        If Cells(I, 5) = Cells(I + 1, 5) And Cells(I, 7) = Cells(I + 1, 7) Then
            Cells(I, 6).Value = Cells(I, 6).Value + Cells(I + 1, 6)
            'La je ne sais pas comment supprimer la ligne doublon..
            Rows(I + 1).EntireRow.Delete
        End If
Next I
End Sub

Bonjour,

Ci-joint un fichier exemple.

X Cellus,

Avec ce code tu ne traite que la ligne I et la ligne juste en dessous.

Je souhaite traiter la ligne I avec toutes les lignes se trouvant en dessous.. Pas seulement I + 1 d'ou mon deuxième For y

mes cellules (E) Cells(I, 5,) & (G) Cells(I, 7) seront identiques à une ligne qui se trouve en dessous alors on Additionne la Cellules (F) Cells(I, 6) puis on supprime la fameuse ligne identique.

Effectivement compte tenu du message ou tu indiques à une ligne en dessous et non à toutes les lignes en dessous. Je vois pourquoi cette double boucle.

A suivre...

A nouveau,

Voici ton fichier modifié.

Excuse moi je me suis mal fait comprendre

Le fichier ne fonctionne pas, il s'arrête et bug à

STOP

Si je le supprime ça ne fonctionne pas tout de même car il me supprime la ligne avec la lettre b en colonne e

A nouveau

Voici comme espéré. Du moins selon zone L29 à L32.

Effacer l'ancien fichier envoyé avant de tester le nouveau.

Ça fonctionne une seule chose c'est que j'ai l'impression qu'il ne traite pas toute les lignes.. Du moins la dernière ligne n'est pas traité... pas ajouté et supprimé..

Voici ma sortie suite au clic bouton Ote doublon et ligne sur les 7 lignes présentées.

a 2 b

b 2 b

c 1 f

c 1 b

qui étaient au départ ainsi.

a 1 b

b 1 b

c 1 f

a 1 b

b 1 b

c 1 b

La dernière ligne c 1 b ne correspond pas à c 1 f donc c'est normal qu'il n'y touche pas.

C'est bien ce que tu as écrit: (E) Cells(I, 5,) & (G) Cells(I, 7) seront identiques .

Le code ne traite que les lignes identiques et je n'ai pas touché cette partie là que tu as écrite.

C'est bon Merci Beaucoup !

Rechercher des sujets similaires à "vba additionner doublon supprimer"