Supprimer une ligne avec un bouton
SOSO
-
gbinforme Messages postés 14946 Date d'inscription Statut Contributeur Dernière intervention -
gbinforme Messages postés 14946 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je sais que plusieurs sujets ont été créés à ce sujet mais je ne trouve pas comment faire ce que je souhaite.
Voila j'ai une base de donnée où la première colonne est un matricule. Je voudrais rattacher une macro à un bouton pour que lorsque l'on clique dessus un message apparaisse demandant "quel matricule supprimer ?" et que la ligne correspondant au matricule saisi soit effacée.
Comment faire ?
Merci d'avance pour votre aide
Je sais que plusieurs sujets ont été créés à ce sujet mais je ne trouve pas comment faire ce que je souhaite.
Voila j'ai une base de donnée où la première colonne est un matricule. Je voudrais rattacher une macro à un bouton pour que lorsque l'on clique dessus un message apparaisse demandant "quel matricule supprimer ?" et que la ligne correspondant au matricule saisi soit effacée.
Comment faire ?
Merci d'avance pour votre aide
A voir également:
- Supprimer une ligne avec un bouton
- Supprimer rond bleu whatsapp - Guide
- Supprimer une page word - Guide
- Partager photos en ligne - Guide
- Impossible de supprimer un fichier - Guide
- Comment supprimer une application préinstallée sur android - Guide
2 réponses
Bonjour,
Pourquoi compliquer ?
Avec cette macro dans le code de la feuille et un double clic sur la ligne à supprimer, cela fonctionne.
Pourquoi compliquer ?
Avec cette macro dans le code de la feuille et un double clic sur la ligne à supprimer, cela fonctionne.
Private Sub Worksheet_BeforeDoubleClick(ByVal sel As Range, Cancel As Boolean) If vbYes = MsgBox("Voulez-vous supprimer " & sel.Value, vbYesNo, "Suppression matricule") Then Rows(sel.Row).Delete End If End Sub
Private Sub CommandButton1_Click()
result= MsgBox("Saisissez le matricule à supprimer", ,"Suppression matricule")
If rep = "" Then Exit Sub
Set cel = ActiveSheet.Columns(1).Find(rep, [A1], xlValues, xlWhole)
If cel Is Nothing Then
MsgBox "Matricule absent"
Else
Rows(cel.Row).Delete
MsgBox "Matricule supprimé : " & rep
End If
'on peut passer par la fonction find
Sub exemple()
'Activation de la feuille 1
Sheets("Feuil1").Activate
'Sélection de la cellule A8
'Range("A8").Select
Cells.Find(What:="result", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate
End Sub
ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End Sub
Ce ne sont juste que des pistes
result= MsgBox("Saisissez le matricule à supprimer", ,"Suppression matricule")
If rep = "" Then Exit Sub
Set cel = ActiveSheet.Columns(1).Find(rep, [A1], xlValues, xlWhole)
If cel Is Nothing Then
MsgBox "Matricule absent"
Else
Rows(cel.Row).Delete
MsgBox "Matricule supprimé : " & rep
End If
'on peut passer par la fonction find
Sub exemple()
'Activation de la feuille 1
Sheets("Feuil1").Activate
'Sélection de la cellule A8
'Range("A8").Select
Cells.Find(What:="result", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate
End Sub
ActiveSheet.Rows(ActiveCell.Row).EntireRow.Delete
End Sub
Ce ne sont juste que des pistes
Merci pour votre réponse, effectivement ca pourrait marcher comme ca. Le soucis c'est que pour l'usage prévu de ce fichier il serait plus simple de procéder avec un bouton.
Ou bien alors peut être une case où on saisirait le matricule et ensuite un bouton supprimer ?
Si tu tiens à compliquer, tu crées un bouton avec ce code :
Ca a marché nickel, juste ce que je voulais, merci beaucoup
tu remplaces par