Rendre invisibles des contrôles dans un UserForm

Résolu
jagjag36 Messages postés 5 Date d'inscription samedi 29 novembre 2008 Statut Membre Dernière intervention 13 décembre 2008 - 29 nov. 2008 à 10:26
jagjag36 Messages postés 5 Date d'inscription samedi 29 novembre 2008 Statut Membre Dernière intervention 13 décembre 2008 - 30 nov. 2008 à 10:04
Visible ou pas ?


Dans une procédure concernant un UserForm "Rapp" j'ai 2 "Private Sub" qui devraient rendre invisiblesUserForm 3 contrôles. Dans le premier, "CREATION1" cela fonctionne, mais pas dans le second : "CREATION2", alors que si, dans ce dernier, je supprime "Unload usfRapp" et "usfRapp.Show (0)", les contrôles deviennent invisibles comme souhaité (mais j'ai besoin de ces fonctions). Comment faire ? Voici ce code : (Merci pour votre aide)

'CREATION1
Private Sub RappcmdCréer_Click()
RapptxtNo.Visible = False
RappFraA_remplir.Visible = False
RappcmdEnregistrer.Visible = False
End Sub

'CREATION2
Private Sub RappcbxBFNom_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Unload usfRapp
usfRapp.Show (0)
RapptxtNo.Visible = False
RappFraA_remplir.Visible = False
RappcmdEnregistrer.Visible = False
End Sub

2 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
30 nov. 2008 à 08:26
Salut,
quel est le but de Décharger (Unload) le formulaire avant de l'afficher?
Pourquoi dans ce cas ne pas le recharger après sont déchargement?

Private Sub RappcbxBFNom_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
   Call Unload(usfRapp)
   Call Load(usfRapp)
   Call usfRapp.Show(0)
   RapptxtNo.Visible = False
   RappFraA_remplir.Visible = False
   RappcmdEnregistrer.Visible = False
End Sub<hr />, ----
[../code.aspx?ID=41455 By Renfield]

@+: Ju£i€n
Pensez: Réponse acceptée
3
jagjag36 Messages postés 5 Date d'inscription samedi 29 novembre 2008 Statut Membre Dernière intervention 13 décembre 2008
30 nov. 2008 à 10:04
Salut,


Merci de t'être penché sur ma question.
En réalité l'opération "unload........show" a pour but de transférer en une seule fois les informations de l'USF à la Feuil et vice-versa.
On peut aussi utiliser l'instruction Sheets("Feuil1").Range("A1").Value= ComboBox1.Value, ou l'inverse pour revenir de la Feuil1 à l'USF, mais alors il faut une instruction par contrôle ce qui est peu élégant !
Si je n'ai pas mis de "Load " c'est que "Show" comprend déjà cette action. Par contre je ne comprends pas la nécessité d'utiliser le "Call" ?
Autre question : comment se fait-il que "ton" code comprenne des indications en couleur ?


jagjag36
0
Rejoignez-nous