Bonjour tout le monde
Sebb, je ne sais pas pour ton problème de commandButton1_click.
Mais en revanche, je sais qu'une suppression de ligne génère un recalcul des feuilles ouvertes.
Il y a bien une possibilité de mettre le mode de calcul en manuel, et de le restaurer à la fin de la macro. Pour éviter de basculer le mode de calcul. il y a une possibilité c'est de faire une réunion de plage de cellules, puis de faire une suppression de lignes.
Voici un code de myDearFriend
Sub suppr()
Dim TabTemp As Variant
Dim L As Long, i As Long
Dim Flag As Boolean
'Charge les données dans un tableau variant temporaire (pour accélerer la macro)
Application.ScreenUpdating = False
With ActiveSheet
L = .Range("D65536").End(xlUp).Row
TabTemp = .Range(.Cells(1, 4), .Cells(L, 4)).Value
Selection.Clear
For i = 1 To L
If TabTemp(i, 1) Like "*suppr*" Then
If Not Flag Then
.Cells(i, 1).Select
Flag = True
End If
Union(Selection, .Rows(i).EntireRow).Select
End If
Next i
End With
If MsgBox("Confirmez-vous la suppression ?", vbYesNo) = vbYes Then
Selection.Delete
End If
Application.ScreenUpdating = True
End Sub
Ce code est tiré de ce fil de discussion Lien supprimé
Tu devras adapter le code de Didier à ton cas.
@+Jean-Marie