Button de commande dans une Userform

Résolu
Signaler
Messages postés
62
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
30 mai 2017
-
Messages postés
79
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
25 septembre 2007
-
Bonjour,

J'ai un petit probleme avec une userform. Je lance une macro a partir d'un module. Dans ce module, je demande a m'afficher une userform. Jusque la pas de soucis. Dans ma userform j'ai le choix entre deux boutton de commande "CommandButton1" et "CommandButton2". Quand je clique l'un des deux, la userform se ferme "Hide.userform", et la macro repart dans le module. Mais je n'arrive pas a indiquer dans le module quel button j'ai cliqué. Car je souhaite mettre une condition "if" qui m'execute une chose si "CommandButton1" a ete cliqué, ou bien une autre procedure si j'ai choisi "CommandButton2".

Je sais que l'on peut recuperer les valeurs de textbox, ou listbox dans un module, mais je ne sais pas comment recuper une variable de userform.

Je pensais mettre une variable dans la procedure de la userform, mais je ne peu pas recuperer cette variable dans le module (a moins que je me debrouille comme un manche)

Si quelqu'un a l'astuce, car je commence a m'arracher les cheveux...

Merci d'avance.

Vevel

7 réponses

Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Passes par des variables Déclarées comme Public Dans un Module
Elle seront alors disponibles partout
@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
79
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
25 septembre 2007

Salut,

Au vu de tes précédents messages, je suppose que tu es en VBA et non en VB.net... Faut que tu y fasses attention, sinon tu vas t'attirer les foudres des admins!!

Ne peux tu pas utiliser une cellule de ta feuille pour y mettre une variable?
C'est la "combine" que j'utilise, mais il y a peut-être mieux...

Tubafat  
Avant d'imprimer, pensez à l'environnement
Messages postés
62
Date d'inscription
jeudi 26 mai 2005
Statut
Membre
Dernière intervention
30 mai 2017
1
Pas mal Ju£i?n, mais j'aimerais que la routine ne soit pas accessible depuis Excel. Et c'est le cas avec une Public Sub (). Et un Private Sub () ne fonctionne pas evidemment. C'est vrai que l'astuce etait bonne sinon.

Tubafat, d'habitude je fais comme tu l'expliques, mais la je ne peux pas utilise de cellule pour y mettre une variable.
Merci aussi de ta recommendation a propos de VBA et VB.net, j'y ferrais attention la prochaine fois.

Vevel
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Re,
ATTENTION je parle de variable
et non de procédure ou de fonction.

tes procédure peuvent être privés mais utiliser des variables qui elles seront public

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
79
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
25 septembre 2007

Salut Julien,

en gros tu parles de faire une déclaration de variables genre:

Public variable as integer

Et ça permet donc de récupérer la variable (et surtout sa valeur) dans tout le projet ?

Tubafat  
Avant d'imprimer, pensez à l'environnement
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Re,
Oui exactement

@+: Ju£i?n
Pensez: Réponse acceptée
Messages postés
79
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
25 septembre 2007

OK
Ben merci à Vevel d'avoir posé la question, comme ça je vais pouvoir arrêter de "bidouiller" et faire des choses un peu plus propre!

Tubafat  
Avant d'imprimer, pensez à l'environnement