Récuperer la fonction "cliquée" ou l'evenement ?

Creepy

XLDnaute Accro
Bonjour à vous,

J'ai réalisé un fichier Excel contenant du code sur "Worksheet_Change". Ce code permet de vérifier la saisie faites pas les utilisateurs.

Le hic, c'est que lorsque l’utilisateur, fait une "effacer contenu", le worksheet_change se déclenche et Paf le chien une msgbox s'affiche indiquant "saisie non conforme" et paf la macro s'arrête et l'ancienne valeur est gardée !
Cela empêche donc de pouvoir supprimer le contenu d'une cellule !

Ma question : Comment puis-je savoir sur quelle commande a cliqué l'utilisateur ou y'a t'il un événement récupérable pour me permettre de faire un IF et ainsi lorsque l’utilisateur efface/supprime une cellule sortir de mon code et permettre l'action ?

Merci d'avance.

Creepy
 

tototiti2008

XLDnaute Barbatruc
Re : Récuperer la fonction "cliquée" ou l'evenement ?

Bonjour Creepy,

A mon avis, ce qui caractérise un effacement de données, c'est qu'après il n'y a plus de données

Dans ton Worksheet_Change, fait un test sur la valeur de Target et si elle est vide, sort de ta procédure évènementielle
 

JNP

XLDnaute Barbatruc
Re : Récuperer la fonction "cliquée" ou l'evenement ?

Bonjour le fil :),
J'ajouterais que s'il n'existe pas, un test sur Target.Count = 1 est souvent recommandé pour que la suppression d'une plage de données ne fasses pas bugguer le code :rolleyes:...
Bonne suite :cool:
 

bobby5169

XLDnaute Nouveau
Re : Récuperer la fonction "cliquée" ou l'evenement ?

Tu peux essayer aussi cette procédure.
Je l'ai testé dans un userform avec un textbox avec l'évenement Keydown

Tu as le test sur la touche Backspace <-- et suppr

Code:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyDelete Then MsgBox ("Hello")
If KeyCode = vbKeyBack Then MsgBox ("Aloha")
 

JNP

XLDnaute Barbatruc
Re : Récuperer la fonction "cliquée" ou l'evenement ?

Re :),
Je l'ai testé dans un userform avec un textbox avec l'évenement Keydown
Dans un USF, oui, mais dans une feuille, il n'y a pas d'événement liés au clavier (mais si tu trouves le moyen d'en ajouter un, ça m'intéresse, mais même par Module de classe, on en avait conclu dans un autre post que c'était impossible :rolleyes:...) :p...
Bonne suite :cool:
 

Statistiques des forums

Discussions
312 315
Messages
2 087 170
Membres
103 490
dernier inscrit
zatougraf