Conserver la valeur d'une CheckBox (VBA)

Conserver la valeur d'une CheckBox (VBA) - VB/VBA/VBS - Programmation

Marsh Posté le 23-05-2006 à 10:51:48    

Bonjour,
 
J'ai créé une userform avec des checkbox
J'ai également ajouté un bouton "valider" sur cette meme Userform (avec action .Hide)
 
 
Lorsque je coche une checkbox et que je ferme puis réouvre mon userform, la checkbox est toujours cochée.
Mais si je coche la checkbox, que je ferme excel puis que je réouvre mon fichier puis l'userform, la checkbox n'est plus cochée.
 
Comment faire pour garder les paramètres d'une checkbox?
 
Thanks
 
Juans
 
 

Reply

Marsh Posté le 23-05-2006 à 10:51:48   

Reply

Marsh Posté le 23-05-2006 à 13:17:11    

Bonjour

 

Peut être en mettant la valeur par défaut à "vrai"

Reply

Marsh Posté le 23-05-2006 à 19:19:26    

Probleme inverse si je renseigne la valeur "True"
 
La checkbox reste cochée apres enregistrement et redemarage.

Reply

Marsh Posté le 24-05-2006 à 08:42:06    

Bonjour, il faut fermer ton formulaire avec la commande unload et pas hide.

Reply

Marsh Posté le 24-05-2006 à 13:32:18    

Ok, mais je n'arrive pas a utiliser cette fonction.
Peux tu me donner une exemple?
Quelle est la différence entre Hide et Unload ?
 
merci.

Reply

Marsh Posté le 24-05-2006 à 16:24:42    

formulaire.hide : Cache le formulaire
Tu ne vois pas le formulaire mais il est toujours là, et les valeurs de tes variables (comme ta checkbox) se trouvent toujours en mémoire.
 
unload(formulaire) : Ferme le formulaire
Toutes les informations qui lui sont attribuées sont perdues.
 
Si unload ne fonctionne pas en VBA, essaye docmd.close


Message édité par mcyrb le 24-05-2006 à 16:30:15
Reply

Marsh Posté le 26-05-2006 à 17:28:12    

ok, je regarde ça...

Reply

Marsh Posté le 30-05-2006 à 17:34:00    

docmd.Close ne fonctionne pas non plus.
 
Qui a une solution?

Reply

Marsh Posté le 31-05-2006 à 09:08:15    

Sur un événement d'un formulaire nommé frmTruc, tu fais
Unload Me
 
Sur un événement d'un formulaire nommé frmMachin, mais voulant fermer frmTruc, tu fais
Unload frmTruc
 
Docmd.Close fonctionne en VBA/Access
Rien de compliqué, suffit de lire la doc.

Reply

Marsh Posté le 31-05-2006 à 22:16:38    

juans a écrit :

Mais si je coche la checkbox, que je ferme excel puis que je réouvre mon fichier puis l'userform, la checkbox n'est plus cochée.
Comment faire pour garder les paramètres d'une checkbox?


Si tu veux garder l'état d'une chkbox, même après avoir fermé excel, il faut que tu enregistre cette valeur dans une feuille: c'est à dire qu'il faut que tu lies la source de cette chkbox à une cellule. Ainsi, à la réouverture de ton classeur, quand la form sera rechargée, elle ira chercher la bonne valeur (true/false) dans la cellule.
 
kenavo,
 
Jean-Marc


Message édité par otobox le 31-05-2006 à 22:20:07

---------------
OtObOxBlOg - - - Etre seul à avoir tort  c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons
Reply

Marsh Posté le 31-05-2006 à 22:16:38   

Reply

Marsh Posté le 10-03-2010 à 16:58:57    

Bonjour à tous !  
 
Un petit souçi m'a fait surfer sur ce forum, voiçi mon problème...  
 
Je developpe une appli géstion utilisateurs sur Access (VB), et dans cette appli, la première chose que je récupère est le nom du user connécté, puis son profile avec un DLookup via le code suivant:  
 
oProfileID = DLookup("[PROFILE_ID]", "tbl_Users", "[USER_NAME]= '" & Environ("USERNAME" ) & "'" )  
oFormID = DLookup("[Form_ID]", "tbl_Forms", "[Form_Name]= '" & Me.Name & "'" )  
 
Cependant, comme cette action doit impérativement être éxecuter à chaque ouverture de form de la base de données, j'aimerais faire en sorte de n'éxecuter ceci qu'une seule fois, et ce sur le premier form ouvert par le user et non à chaque ouverture d'un nouveau form. En quelque sorte garder cette info (ProfileID récupéré) en mémoire...  
 
Ma question: COMMENT FAIRE ???  
 
Merci par avance !!!

Reply

Marsh Posté le 10-03-2010 à 18:24:34    

Soit en l'inscrivant en dur dans une table temporaire. Soit en créant une variable publique dans un module.


---------------
OtObOxBlOg - - - Etre seul à avoir tort  c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons
Reply

Marsh Posté le 12-03-2010 à 11:57:02    

(Et si ton formulaire "Menu" reste tout le temps ouvert, un controle tout bete qui stocke cette valeur, ou directement dans le Tag du dit formulaire)


---------------
Soyez malin, louez entre voisins !
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed