Bonsoir.
Je suppose que c'est parce qu'il n'existe aucune cellule contenant un texte à l'image de la valeur de la TexBox1.
Essayez peut être en la convertissant en nombre avec CDbl(TextBox1.Text)
Remarque: l'instruction .ListObjects("Plan_Comptable").ListRows(i).Delete est correcte.
La structure de la boucle moins: il vaudrait mieux commencer par la fin s'il peut y avoir plusieurs lignes à supprimer.
Private Sub B_sup_Click()
If Me.Enreg <> "" Then
If MsgBox("Etes vous sûr de supprimer " & Me.TextBox1 & "?", vbYesNo) = vbYes Then
[Tableau1].Rows(Me.Enreg).Delete
End If
End If
End Sub
Merci vous deux.
J'ai modifier le code comme ceci et ça fonctionne super bien :
Private Sub CommandButton2_Click()
If TextBox1.Value = "" Then
MsgBox ("Veuillez saisir un numéro de compte.")
Exit Sub
End If
With Sheets("Pcg")
r = MsgBox("confirmez-vous la suppression ?", vbYesNo, "Gestion des comptes")
If r <> 6 Then Exit Sub
For i = 2 To Range("B:B").End(xlDown).Row
If Me.TextBox1.Text = .Cells(i, 2) Then
.ListObjects("Plan_Comptable").DataBodyRange.Rows(i - 1).Delete
Me.TextBox1.Value = ""
Me.TextBox2.Value = ""
End If
Next i
Unload Me
USFPcg.show