Bonjour,
Je souhaite supprimer une ligne d'enregistrement de ma base de donnée à l'aide de la macro suivante qui propose 2 questions à l'utilisateur:
Question 1: "Souhaitez vous supprimer une ligne"?
Question 2: "Positionnez votre curseur sur la ligne à supprimer"
Résultat: suppression de la ligne
Possibilité de sortir (choix "Non" ou "Annuler")
Cela marche pour:
- Sortir sur "Nonn" à la première question
- Supprimer la ligne : cela ses déroule bien si je ne clique que sur "Oui" aux 2 questions. (C'est déjà ça!)
Ca plante pour le cas "Annuler"
Je pense que mon problème vient de la déclaration de variable MyCell qui ne renvoie False (booleén) dans un cas et une adreesse de cellule dans l'autre cas (Range)
Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Sub SupprimerEnregistrement() Dim MyCell As Range choix1 = MsgBox("Voulez-vous supprimer un enregistrement ?", 36, "Confirmation") If choix1 = vbNo Then MsgBox "C'est enregistré!" Else Set MyCell = Application.InputBox( _ prompt:="Positionnez votre curseur sur la ligne à supprimer", Type:=8) If MyCell = False Then MsgBox "OK!" Else MyCell.EntireRow.Select Selection.Delete Shift:=xlUp End If End If End Sub
Quelqu'un saurait-il m'aider?...
Merci beaucoup !
Partager