Fermer, Décharger et masquer un formulaire personnalisé ou UserForm, Excel VBA

Vous avez deux façons de fermer un UserForm. Une façon est avec la méthode Unload (Décharger) et l’autre avec la méthode Hide (Masquer). Bien que les deux méthodes donnent l’impression que l’UserForm a disparu, elles exécutent chacune des instructions différentes. Cela peut être un point de confusion pour les programmeurs débutants, il est donc important de comprendre la distinction entre Décharger et Masquer.

1 Décharger un UserForm

Lorsque vous déchargez un UserForm, le formulaire se ferme et ses entrées sont effacées de la mémoire. Dans la plupart des cas, c’est ce que vous voulez: que les données entrées soient enregistrées d’une manière ou d’une autre, ou transmises à des variables publiques, puis fermées. L’instruction qui décharge un UserForm est simplement Unload Me, et elle est généralement associée à un CommandButton à cette fin, tel que le bouton Annuler qui a été placé sur l’exemple UserForm de cette leçon.

Supposons que vous souhaitiez décharger le UserForm lorsque vous cliquez sur le bouton Annuler. Un moyen rapide et facile de le faire est de double-cliquer sur le bouton de commande dans la conception de l’UserForm, comme le montre la figure 1.

Figure 1 Décharger le Userform avec le bouton Annuler

Lorsque vous double-cliquez sur le bouton de commande, vous voyez ces lignes de code dans le module UserForm:

Private Sub CommandButton2_Click()

End Sub

Pour terminer la procédure Click, tapez Unload Me. Lorsque vous cliquez sur le bouton Annuler, l’UserForm se décharge – c’est-à-dire qu’il se ferme et libère de la mémoire les données qui ont été saisies – avec cet événement Click pour ce bouton:

Private Sub CommandButton2_Click()

    Unload Me

End Sub

NOTE                                                                                                         

Le mot-clé Me renvoie le nom de la fenêtre active.

2 Masquer un UserForm

La méthode Hide rend le UserForm invisible, mais les données qui étaient dans l’UserForm sont toujours là, restant en mémoire et peuvent être affichées lorsque le formulaire est à nouveau affiché. Dans certaines situations, vous souhaiterez que ce soit le cas, par exemple si vous interagissez avec deux ou plusieurs UserForms et que vous souhaitez que l’utilisateur se concentre sur un seul formulaire à la fois. L’instruction pour masquer un UserForm est Me.Hide.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x