VBA Fermer UserForm

Lorsque nous créons un formulaire utilisateur, il prend des données comme entrée des utilisateurs, mais les données fournies au formulaire ne se ferme pas, de sorte qu'il peut induire l'utilisateur en erreur pour qu'il saisisse à nouveau des données, nous utilisons deux commandes différentes pour fermer un formulaire utilisateur lorsque l'entrée a été donné et ils sont la méthode Unload me pour fermer un formulaire utilisateur ou nous pouvons utiliser la méthode userform.hide.

Excel VBA Fermer le formulaire utilisateur

Les formulaires utilisateur sont vitaux lors de l'obtention des entrées de l'utilisateur dans le cadre du projet VBA. Nous concevons généralement le formulaire utilisateur avant de le présenter devant l'utilisateur. Une fois la conception du formulaire utilisateur VBA terminée, nous devons afficher la même chose devant l'utilisateur et exiger le codage VBA. De même, pour fermer le formulaire utilisateur, il nécessite des connaissances en codage VBA.

Dans cet article, nous allons vous montrer comment fermer le formulaire utilisateur en codage VBA.

Comment fermer UserForm dans Excel VBA?

Une fois que l'objectif du formulaire utilisateur est terminé, il est nécessaire de continuer à afficher le formulaire utilisateur devant l'utilisateur, nous devons donc fermer le formulaire utilisateur. Nous pouvons fermer le formulaire utilisateur en utilisant les instructions «Unload Me» et «UserForm.Hide». Même si les deux sont légèrement différents l'un de l'autre, cela finira par servir notre objectif.

Vous pouvez télécharger ce modèle Excel VBA Close UserForm ici - Modèle Excel VBA Close UserForm

# 1 - Fermer le formulaire utilisateur à l'aide de l'instruction «Unload Me» dans VBA

Par exemple, regardez l'image ci-dessous du formulaire utilisateur.

J'ai nommé le formulaire utilisateur comme «MyUserForm».

Si j'exécute le formulaire utilisateur, nous verrons le formulaire utilisateur comme ci-dessous.

Je dois remplir les détails requis, une fois les informations remplies, si je clique sur le bouton Soumettre, les mêmes données seront capturées dans la feuille de calcul visible sur le côté gauche.

En cliquant sur le bouton Soumettre, il a capturé les données que j'ai entrées dans le formulaire utilisateur.

Si vous remarquez que nous avons un autre bouton appelé «Annuler». Qu'est-ce que cela fait?

Avant d'afficher le formulaire utilisateur, nous devons configurer ce bouton. Je vais maintenant revenir à l'éditeur visuel de base pour configurer ce bouton.

Maintenant, je vais double-cliquer sur le bouton Annuler et cela ouvrira la sous-procédure automatique VBA comme ci-dessous.

Dans cette procédure, nous devons écrire le code VBA sur ce qui devrait se passer si nous cliquons sur le bouton Annuler. Lorsque nous cliquons sur ce bouton d'annulation, cela devrait fermer le formulaire utilisateur sur lequel nous travaillons en ce moment.

Alors, écrivez le code comme "Unload Me".

Code:

 Private Sub CancelButton_Click () Unload Me End Sub 

«Unload Me» est le mot que nous utilisons pour fermer le formulaire utilisateur sur lequel nous travaillons. Ici, le formulaire utilisateur reconnaît le mot «Moi» comme le formulaire utilisateur lui-même.

«Unload Me» ne peut être utilisé que sur cette procédure de formulaire utilisateur, nous ne pouvons pas appeler cette instruction dans d'autres modules. S'il est appelé, il affichera le message d'erreur « Utilisation incorrecte de moi mot-clé ».

Ok, exécutons le code en utilisant la touche F5 ou manuellement maintenant, nous verrons un formulaire utilisateur vide.

Remplissez les données et cliquez sur Soumettre.

Une fois que le bouton de soumission a cliqué, il stockera les valeurs dans les cellules mentionnées.

Si la saisie des données est terminée, nous devons fermer le formulaire utilisateur, n'est-ce pas ??

Alors, cliquez sur le bouton Annuler pour fermer le formulaire utilisateur, cela fermera le formulaire utilisateur.

# 2 - Fermer UserForm en utilisant la méthode Hide dans Excel VBA

Nous pouvons également fermer Userform en utilisant la méthode «Hide» également dans VBA. Maintenant, encore une fois, je vais double-cliquer sur le bouton d'annulation pour voir la sous-procédure privée.

Puisque nous avons déjà écrit le code pour fermer le formulaire utilisateur, nous pouvons voir le code existant dans VBA. Maintenant, je vais supprimer ceci.

Pour utiliser la méthode Hide, nous devons appeler le formulaire utilisateur par son nom. Dans ce cas, le nom de notre formulaire utilisateur est «MyUserForm».

Après avoir mentionné le formulaire utilisateur par son nom, si nous mettons un point (.), Nous pouvons voir toutes les propriétés et méthodes de ce formulaire utilisateur. Maintenant, je vais sélectionner la méthode «Masquer».

Ok, exécutons le formulaire utilisateur une fois de plus. Nous verrons un formulaire utilisateur vierge, remplissez d'abord les détails.

Maintenant, sans un clic sur le bouton Soumettre, je clique sur le bouton Annuler, cela masquera le formulaire utilisateur.

Différence entre décharger et masquer dans Excel VBA

Vous devez vous demander quelle est la différence entre Unload & Hide, où les deux ont un objectif similaire. Il y a une différence entre ces deux. Maintenant, j'utiliserai d'abord l'instruction Unload Me. Regardez l'image ci-dessous.

J'ai saisi les données dans le formulaire utilisateur mais je ne les ai pas encore soumises. Si je clique sur Annuler, cela déchargera le formulaire utilisateur.

Maintenant encore, je vais exécuter le code via la touche de raccourci Excel F5 ou manuellement, il affichera un formulaire utilisateur vide.

Même si j'ai saisi correctement les données par erreur, j'ai cliqué sur le bouton d'annulation, lorsque le nouveau formulaire utilisateur réapparaît, j'ai rempli les données de zéro.

Maintenant, je vais utiliser la méthode «Hide».

Non, je vais cliquer sur le bouton Annuler, cela masquera le formulaire utilisateur visible. Mais quand je réexécute la macro, elle reviendra avec les données que j'ai déjà entrées sur le formulaire utilisateur.

C'est ainsi que nous pouvons utiliser l'instruction «Unload» et la méthode «Hide» pour fermer les formulaires utilisateur dans Excel VBA.