Bonjour,
Je pratique le VBA depuis peu et j'essai actuellement de faire un suivi automatisé de documents. J'ai crée un UserForm avec plusieurs textbox. Je souhaiterai que lorsque je clique sur le bouton supprimer d'un userform le programme recherche la valeur de la textbox dans tout le tableau et qu'il supprime la ligne concernée automatiquement. Pour cela j'ai programmé comme tel :
Private Sub Supprimer_Click()
Dim plage As Range
Set plage = Range("B2:B100")
For i = 2 To 279
If TextBox1.Value = Cells(i, 2).Value Then
Set plage = Sheets("Suivi des règles de conception").Range("B:B").Find(TextBox1.Text)
If Not plage Is Nothing Then
MsgBox ("Attention la modification suivante sera supprimer définitivement!" & vbCr & vbCr & Sheets("Suivi des règles de conception").Range("A" & i) & vbCr & vbCr & Sheets("Suivi des règles de conception").Range("J" & i))
Columns(2).Rows(i).EntireRow.Delete
End If
Exit Sub
Else
MsgBox ("Cette référence n'existe pas")
Exit Sub
End If
Next
End Sub
Ce programme supprime bel et bien une ligne seulement il supprime que si la valeur taper en référence (textbox) est reconnu sur la seconde ligne (Cell(2,2). Concretement si ma référence est dans la Cell(4,5) il dit qu'elle existe pas.
Merci de votre aide. Je suis nouveau sur les forums alors si jamais vous avais du mal a comprendre mon problème ou que j'ai omis un concept de ce forum n'hésitez pas à m'en faire part. Par ailleurs il est possible que ce topic existe déja, dans le cas écheant merci de me rediriger vers celui-ci.
Je pratique le VBA depuis peu et j'essai actuellement de faire un suivi automatisé de documents. J'ai crée un UserForm avec plusieurs textbox. Je souhaiterai que lorsque je clique sur le bouton supprimer d'un userform le programme recherche la valeur de la textbox dans tout le tableau et qu'il supprime la ligne concernée automatiquement. Pour cela j'ai programmé comme tel :
Private Sub Supprimer_Click()
Dim plage As Range
Set plage = Range("B2:B100")
For i = 2 To 279
If TextBox1.Value = Cells(i, 2).Value Then
Set plage = Sheets("Suivi des règles de conception").Range("B:B").Find(TextBox1.Text)
If Not plage Is Nothing Then
MsgBox ("Attention la modification suivante sera supprimer définitivement!" & vbCr & vbCr & Sheets("Suivi des règles de conception").Range("A" & i) & vbCr & vbCr & Sheets("Suivi des règles de conception").Range("J" & i))
Columns(2).Rows(i).EntireRow.Delete
End If
Exit Sub
Else
MsgBox ("Cette référence n'existe pas")
Exit Sub
End If
Next
End Sub
Ce programme supprime bel et bien une ligne seulement il supprime que si la valeur taper en référence (textbox) est reconnu sur la seconde ligne (Cell(2,2). Concretement si ma référence est dans la Cell(4,5) il dit qu'elle existe pas.
Merci de votre aide. Je suis nouveau sur les forums alors si jamais vous avais du mal a comprendre mon problème ou que j'ai omis un concept de ce forum n'hésitez pas à m'en faire part. Par ailleurs il est possible que ce topic existe déja, dans le cas écheant merci de me rediriger vers celui-ci.