Bonjour à tous,
Je souhaite supprimer des lignes sur un classeur qui contient plus de 350 000 lignes,
Les conditions sont :
- Si dans la ligne x de la colonne "A" ne commence pas par ( YTD ACT, B ou Réel ) alors supprimer la ligne.
J'ai effectué ce code qui fonctionne mais celui ci est très long à s’exécuter, avez vous une astuce afin d'accélérer le code?
Merci à vous
Je souhaite supprimer des lignes sur un classeur qui contient plus de 350 000 lignes,
Les conditions sont :
- Si dans la ligne x de la colonne "A" ne commence pas par ( YTD ACT, B ou Réel ) alors supprimer la ligne.
J'ai effectué ce code qui fonctionne mais celui ci est très long à s’exécuter, avez vous une astuce afin d'accélérer le code?
VB:
Sub SupprLigne()
Dim i As Long
Dim DerLigne As Long
Dim crit1, crit2, crit3 As String
With Sheets("BDD").Activate
DerLigne = Range("A" & Rows.Count).End(xlUp).Row
crit1 = "YTD ACT*"
cri2 = "Reel*"
crit3 = "B*"
For i = DerLigne To 1 Step -1
If Cells(i, 1).Value <> crit1 Or Cells(i, 1).Value <> crit2 Or Cells(i, 1).Value <> crit3 Then
Cells(i, 1).EntireRow.Delete
End If
Next i
End With
End Sub
Merci à vous