Bonsoir, est ce que quelqu'un peut me dire si ce code est sensé permettre de supprimer la liste dont la valeur en premiere colonne
est la valeur de mon text box TB_supprimer_et_id.Value ? parce que ca n'efface rien et ca m'affiche le message box d'erreur.
THANKS
Private Sub CB_supprimer2_Click()
Dim WS_Count As Integer
Dim x As Integer
'WS_Count = nombre de feuilles
WS_Count = ActiveWorkbook.Worksheets.Count
For x = 1 To WS_Count
'declarer les variables
Dim n As Integer, i As Integer, j As Integer, ligne As Integer, res As String, question As String
n = Cells(Rows.Count, "A").End(xlUp).Row + 1 ' numéro de la dernière ligne + 1
i = 1
j = 0 ' j nous sert à savoir combien de personne corresponde à la recherche
ligne = 0 ' nous permet de récupérer le numéro de la ligne
'Tant que i est différent de n
Do While i <> n
If Cells(i, 1).Value = TB_supprimer_et_id.Value Then
j = j + 1 'à chaque personne qui correspond à la recherche j est incrémenté de 1
ligne = i
res = Cells(i, 1) & " - " & Cells(i, 2) & " - " & Cells(i, 3)
End If
i = i + 1
Loop
' si j = 0, personne ne correspond à la recherche
If j = 0 Or TB_supprimer_et_id.Value = "" Then
MsgBox ("Aucune personne correspond à cet identifiant")
TB_supprimer_et_id.Value = "" ' on initialise
TB_supprimer_et_id.SetFocus
' si j=1, une personne a été trouvé
ElseIf j = 1 Then
question = MsgBox("Souhaitez-vous supprimer " & res & "?", vbYesNo, Supprimer)
If question = vbYes Then
Cells(ligne, 1).EntireRow.Delete 'supprimer la ligne entière
Exit Sub
ElseIf question = vbNo Then
Exit Sub
End If
End If
Next x
End Sub