Bonjour à tous,
j'ai un petit problème de vitesse d'éxécution sur une de mes programmations. J'aimerais que ce programme soit plus rapide, je n'ai peut être pas été judicieuse dans ma programmation, pouvez vous m'aider?
Résumé de ce que je veux :
Feuille 1 : ma colonne D contient des enregistrements ( exemple :T1, T2,T3,T4)
Feuille 2 : pour chaque ligne de ma feuille, si ma colonne B ne contient ni T1, ni T2 , ni T3 , ni T4 , je supprime la ligne.
Voici le programme que j'ai fait :
Sub macro1()
Dim i, nblign As Integer
Dim var1, var2, var3, var4 As String
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Sheets("Feuill1").Select
If Cells(3, 4) <> "" Then var1 = Cells(3, 4)
If Cells(4, 4) <> "" Then var2 = Cells(4, 4)
If Cells(5, 4) <> "" Then var3 = Cells(5, 4)
If Cells(6, 4) <> "" Then var4 = Cells(6, 4)
Sheets("Feuill2").Select
nblign = ActiveSheet.UsedRange.Rows.Count
i = nblign
For i = nblign To 2 Step -1
Cells(i, 2).Select
If Selection <> var1 And Selection <> var2 And Selection <> var3 And Selection <> var4 Then
Rows(i).Delete
End If
Next i
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
Voilà, si quelqu'un à une petite idée, je suis preneuse.
Merci à tous par avance