OVH Cloud OVH Cloud

[XL97 - VBA] & Validation

2 réponses
Avatar
Sethenes
Bonjour à tous,

Je suis confronté à un problème. Je sais récupérer à l'aide de la procédure
"Worksheet_Change(ByVal Target As Excel.Range)" les modifications faite par
l'utilisateur dans une cellule d'excel.

Mais si j'applique à cette cellule, une "Validation..." de type "list", le
fait de changer la valeur sélectionnée dans la cellule ne me génère plus
l'événement "Worksheet_Change".

Quelqu'un a-t-il une idée sur la résolution de ce problème ?

D'avance Merci

Thierry

2 réponses

Avatar
michdenis
Bonjour Sethenes,

Si tu as besoin d'une bidouille ...

Tu insères une nouvelle feuille que tu masqueras plus tard... et dans l'une des cellules de cette feuille, tu inscris :

=þuil2!A1 , en supposant que ce soit la cellule A1 de la feuille "Feuil2" qui contient une liste !

En utilisant, l'événement Calculate de la nouvelle feuille, tu pourras détecter à quel moment la valeur de la cellule
source changera.
'-------------------
Private Sub Worksheet_Calculate()
'Ton code
End sub
'-------------------

Et pour rendre inaccessible la feuille ajoutée, par code, tu utilises cette ligne :

Worksheets("FeuilleAjoutée").visible = xlveryhidden


Salutations!



"Sethenes" a écrit dans le message de news:40fa5096$0$374$
Bonjour à tous,

Je suis confronté à un problème. Je sais récupérer à l'aide de la procédure
"Worksheet_Change(ByVal Target As Excel.Range)" les modifications faite par
l'utilisateur dans une cellule d'excel.

Mais si j'applique à cette cellule, une "Validation..." de type "list", le
fait de changer la valeur sélectionnée dans la cellule ne me génère plus
l'événement "Worksheet_Change".

Quelqu'un a-t-il une idée sur la résolution de ce problème ?

D'avance Merci

Thierry
Avatar
Sethenes
Merci pour l'astuce ... j'avais essayé de faire le même truc dans la même
feuille et cela ne me convenait pas ... mais l'idée de la seconde feuille
est excellente !

Thierry

"michdenis" wrote in message
news:
Bonjour Sethenes,

Si tu as besoin d'une bidouille ...

Tu insères une nouvelle feuille que tu masqueras plus tard... et dans
l'une des cellules de cette feuille, tu inscris :


=þuil2!A1 , en supposant que ce soit la cellule A1 de la feuille
"Feuil2" qui contient une liste !


En utilisant, l'événement Calculate de la nouvelle feuille, tu pourras
détecter à quel moment la valeur de la cellule

source changera.
'-------------------
Private Sub Worksheet_Calculate()
'Ton code
End sub
'-------------------

Et pour rendre inaccessible la feuille ajoutée, par code, tu utilises
cette ligne :


Worksheets("FeuilleAjoutée").visible = xlveryhidden


Salutations!



"Sethenes" a écrit dans le message de
news:40fa5096$0$374$

Bonjour à tous,

Je suis confronté à un problème. Je sais récupérer à l'aide de la
procédure

"Worksheet_Change(ByVal Target As Excel.Range)" les modifications faite
par

l'utilisateur dans une cellule d'excel.

Mais si j'applique à cette cellule, une "Validation..." de type "list", le
fait de changer la valeur sélectionnée dans la cellule ne me génère plus
l'événement "Worksheet_Change".

Quelqu'un a-t-il une idée sur la résolution de ce problème ?

D'avance Merci

Thierry