Bonjour à tous,
Voila mon code parcours une feuille excel et je cherche a supprimer les lignes qui ne correspondent pas aux besoins de l'utilisateur.
J'ai un userform sur lequel celui ci peut faire different choix pour farie un filtre sur une feuille excel.
seulement lors de la suppression des lignes mon pc comprends plus rien, se fige et Excel plante
With Worksheets("enr_incidents" )
Do
DateNow = CDate(.Range("A" & cpt))
If (DateNow >= DateDebut) And (DateNow <= DateFin) Then
For cptList = 0 To ListCli.ListCount - 1
If ListCli.Selected(cptList) Then
Cli = ListCli.Column(0, cptList)
'boucle sur tous les clients selectionnés par l'utilisateur
If (.Range("B" & cpt).Value = Cli) Then
LigneValide = 1
MsgBox cpt
End If
End If
Next cptList
End If
If LigneValide = 0 Then
Rows(cpt).Delete
End If
cpt = cpt + 1
LigneValide = 0
Loop Until IsEmpty(.Range("A" & cpt))
End With
J'ai trouvé la commande Rows(cpt).Delete sur un site mais apperement elle fait completement planter mon programme, car j'ai deja testé mon code sans les suppressions pour vérifier qu'il ne se trompait pas sur les lignes valdies et aucun pb.
Y a til une meilleure commande pour supprimer une ligne ? ou pb dans mon code ?
Merci à tous !
Message édité par GillooZ le 14-09-2006 à 11:27:52