Boucle qui ne se fait pas

Bonjour tout le monde.

Dans mon Sub, une boucle ne se fait pas, celle qui identifie/somme/supprime les lignes présentant le même d'intitulé. Voici le dit code :

Dim colonne as worksheet
colonne = Workbooks("lancement macro CDS PASTEUR - Mmmm yy.xlsm").Worksheets(1)

With colonne

Dim dbl As Integer, doublon As Integer

dbl = 20
doublon = colonne.Application.WorksheetFunction.CountIf(Columns("A:A"), Cells(dbl, 1).Value)

For dbl = 20 To Cells(Rows.Count, 1).End(xlUp).Row - 1

    If doublon > 1 And Cells(dbl, 1).Value <> "TOTAL" Then 's'il y a plus d'une case A qui porte le même intitulé et qu'en plus ce n'est une case ayant pour intitulé TOTAL

        .Rows(dbl).EntireRow.Select 'sélection de la ligne qui subit le test
        Selection.Copy 'copie de cette ligne entière
        Selection.Offset(doublon, 0).Insert 'insertion de la copie de ligne au nombre de répétitions en-dessous, car la colonne A est classée par ordre alphabétique
        .Cells(dbl + doublon, 5).Value = .Application.WorksheetFunction.SumIf(Columns("A:A"), Cells(dbl, 1).Value, Columns("E:E")) 'quantité de la nouvelle ligne = somme des quantités
        .Range(Cells(dbl, 1), Cells(dbl + doublon - 1, 1)).EntireRow.Delete 'suppression des autres lignes doublons

    End If

Next dbl

End With

Mon but est qu'une fois les parties précédentes du sub effectuées (récupération et mise en forme de données, pas de souci là-dessus), j'identifie les lignes qui ont le même intitulé en colonne A (doublon > 1) et qui est différent de "TOTAL", je copie la ligne cible de la boucle (cellule en ligne=dbl et colonne=1) et le l'insère "dbl+doublon" lignes plus bas (offset(doublon,0)). Ensuite, je fais la somme de la colonne E qui correspond au critère (somme de la colonne E si même intitulé en colonne A) et je supprime les anciennes lignes qui partageais ce même intitulé.

Or, la boucle ne semble ne pas s'effectuer ; en effet, lors de mes tests, des lignes continuent de partager le même intitulé et il n'y a même pas de création de nouvelle ligne (exemple : Methoxyfurane liquide). Ai-je été assez explicite ?

capture

Ainsi, pouvez-vous m'éclairer sur la raison svp ? D'avance, je vous en remercie.

Hello,

Un TCD ne fonctionnerait pas ?

Bien le bonjour.

Oui, hors VBA, je n'ai aucun souci sur Excel. Mais justement, mon but étant de me former de façon autodidacte en VBA, je souhaite coder tout ce que je peux. Ainsi, avez-vous une idée ? Ou alors, mieux, peut-être que ma façon d'identifier/regrouper/supprimer n'est pas la bonne ??? et donc, pourriez-vous m'aiguiller ?

Rechercher des sujets similaires à "boucle qui fait pas"