Appel macro depuis Userform1

Bonjour

Un formulaire "Userform1" contient un bouton Checkbox1 qui ouvre une Combobox.
Lorsque je clique, sur ce bouton, la procédure "Checkbox1_Click()" s'exécute sans problème.
et la combobox permet d'afficher une liste.

Lorsque je veux activer cette procédure depuis une autre procédure, sans avoir à cliquer sur le bouton Checkbox1 par ces lignes :
UserForm1.Show
Call CheckBox1_Click

j'ai le message d'erreur suivant
"Erreur de compilation
Sub ou Function non définie "
et la ligne "Call CheckBox1_Click " est surlignée.

Si j'essaie ceci :
UserForm1.CheckBox1_Click = Enabled

j'ai ce message d'erreur
"Erreur de compilation
Fonction ou variable attendue"

Doit-on être obligatoirement dans l'Userform pour activer le bouton ?
Une idée ? Merci

re

bonjour

dans ta dernière ligne tu a donné la réponse

il y a deux raisons a ça

la premiere c'est

si tu fait un show ton userform est modal donc tout ce qui est apres show est executer à la fermeture du userform

la 2d raison

c'est que l'event click de ta checkbox est en private

et private seul un autre event DANS LE USERFORM! ou une autre sub (toujours dans le userform) peu l'appeller comme une sub

maintenant supposons que tu show ton userform en non modal

userform1.show 0

et en changeant "private" pour "public"

tu l'appelle comme ceci a partir de ou tu veux

userform1.CheckBox1_Click

voilà j'ai tout dit

..merci.. ...Userform1 s'affiche effectivement mais l'exécution de CheckBox1_Click ne se réalise que si je clique sur le bouton...

...or, j'aurais désiré que la procédure qui lui est affectée, se déroule, pour que ma liste soit disponible dans ma combobox...sans autre intervention...

Bonsoir Jpmalb, PatrickT,

Si tu suis bien les indications données par PatrickT. En plaçant la procédure en Public plutôt que Private, le combo sera activé avec le code présent en checkbox.

'Exemple d' un Checkbox sur un Userform permettant d'afficher les 5ières lignes d'une feuille
Public sub Checkbox1_Click()
Combobox1.Rowsource = "A2:A5"
End sub

'Et son lancement à partir d' un module générique
Sub LanceUsf
Userform1.CheckBox1.value = True
Userform1.Show
End sub

re

bonsoir X Cellus

je complète

'Exemple d' un Checkbox sur un Userform permettant d'afficher les 5ières lignes d'une feuille
Public sub Checkbox1_Click()
With CheckBox1
if .value then
Combobox1.Rowsource = "A2:A5"
else
Combobox1.Rowsource = "A6:A11"
end if 
End With
End sub

en effet l'event click n'a pas de Return integer value

Merci pour vos avis... je vais voir tout cela..

...cette ligne a fait son effet ... Merci à tous

Userform1.CheckBox1.value = True

Rechercher des sujets similaires à "appel macro userform1"