Springfield0
XLDnaute Nouveau
Bonjour à toutes et à tous,
Fidèle lecteur de ce merveilleux forum, je n'ai pas réussi à trouver (pour la première fois) une réponse à mon problème : j'ai un bout de macro qui me permet de supprimer les doublons d'un tableau. Le code est le suivant :
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Set currentcell = Sheets("Par_Bureau local").Range("Z4")
Do While Not IsEmpty(currentcell)
Set nextcell = currentcell.Offset(1, 0)
If nextcell.Value = currentcell.Value Then
currentcell.EntireRow.Delete
End If
Set currentcell = nextcell
Loop
Set currentcell = Nothing
Set nextcell = Nothing
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
j'ai trouvé ce code sur internet, et il fonctionne parfaitement, mais est beaucoup trop long dès lors que j'ai 1000 lignes.
Pour faire simple, je trie au préalable ma colonne par ordre croissant (ce sont des n° de lignes), et si le numéro en dessous est le même que ma cellule actuelle, alors je supprime celle du dessous, et ainsi de suite..
Mais ça me prend un temps fou lorsqu'il y a plus de 200 lignes, et je n'arrive pas à comprendre pourquoi.
Evidemment, j'ai utilisé Application.ScreenUpdating = False
Pourriez me mettre sur la bonne voie ?
Merci !
Fidèle lecteur de ce merveilleux forum, je n'ai pas réussi à trouver (pour la première fois) une réponse à mon problème : j'ai un bout de macro qui me permet de supprimer les doublons d'un tableau. Le code est le suivant :
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Set currentcell = Sheets("Par_Bureau local").Range("Z4")
Do While Not IsEmpty(currentcell)
Set nextcell = currentcell.Offset(1, 0)
If nextcell.Value = currentcell.Value Then
currentcell.EntireRow.Delete
End If
Set currentcell = nextcell
Loop
Set currentcell = Nothing
Set nextcell = Nothing
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
j'ai trouvé ce code sur internet, et il fonctionne parfaitement, mais est beaucoup trop long dès lors que j'ai 1000 lignes.
Pour faire simple, je trie au préalable ma colonne par ordre croissant (ce sont des n° de lignes), et si le numéro en dessous est le même que ma cellule actuelle, alors je supprime celle du dessous, et ainsi de suite..
Mais ça me prend un temps fou lorsqu'il y a plus de 200 lignes, et je n'arrive pas à comprendre pourquoi.
Evidemment, j'ai utilisé Application.ScreenUpdating = False
Pourriez me mettre sur la bonne voie ?
Merci !
Dernière édition: