Cet article montrera comment utiliser une zone de texte dans Excel VBA.
VBA a la possibilité de créer des formulaires avec lesquels l'utilisateur peut interagir, tels que des formulaires de facture ou des coordonnées. Les zones de texte sont des contrôles qui peuvent être utilisés dans ces formulaires, ou les zones de texte peuvent être créées directement dans Excel lui-même.
Création de zones de texte sur les formulaires VBA
Pour insérer une zone de texte dans un formulaire VBA, nous devons d'abord créer le formulaire. Cela se fait dans l'éditeur VBE.
Tout d'abord, ouvrez l'éditeur VBE dans Excel.
Pour insérer un nouveau formulaire utilisateur dans votre code, sélectionnez le Formulaire utilisateur option du menu Insertion.
Un nouveau formulaire d'utilisateur apparaîtra dans le Explorateur de projets et sera affiché dans la fenêtre de code sur la droite.
Vous pouvez renommer votre formulaire en utilisant le Propriétés boîte. Cela devrait apparaître sous votre Explorateur de projets.
Si c'est à quel point, appuyez sur F4 ou cliquez Vue, Fenêtre Propriétés.
Cliquez dans le Nom propriété et renommez votre formulaire.
Nous pouvons maintenant commencer à remplir notre formulaire avec des contrôles - le contrôle de zone de texte est le contrôle le plus populaire avec le contrôle d'étiquette.
Pour remplir le formulaire avec des contrôles, nous devons activer la boîte à outils.
Dans le Menu, sélectionnez Affichage > Boîte à outils.
Pour créer une zone de texte sur votre formulaire, sélectionnez le contrôle Zone de texte dans la boîte à outils.
Faites glisser une forme de boîte sur le formulaire avec votre souris, en maintenant le bouton gauche enfoncé, puis relâchez le bouton de la souris.
Comme il s'agit de la première zone de texte que nous créons, elle s'appellera TextBox1. Comme pour le formulaire, vous pouvez utiliser la fenêtre Propriétés pour renommer la zone de texte.
Vous devrez peut-être également créer une étiquette pour votre zone de texte sur le formulaire. Cela se fait avec un contrôle d'étiquette. Vous faites glisser sur le formulaire de la même manière que vous le faites pour une zone de texte, puis vous pouvez taper le texte requis dans le contrôle d'étiquette, par exemple : Prénom comme indiqué ci-dessous.
Pour utiliser le formulaire dans le code VBA, nous aurions besoin d'ajouter un bouton de commande au formulaire. Pour ce faire, sélectionnez le contrôle Bouton de commande dans la boîte à outils et faites glisser le bouton sur votre formulaire.
Vous pouvez ensuite continuer à créer votre formulaire à l'aide de zones de texte, d'étiquettes et de boutons de commande, en les renommant le cas échéant.
Écrire du code derrière les formulaires
Une fois que nous avons créé notre formulaire, nous devons écrire du code VBA pour insérer les informations de notre formulaire sur notre feuille de calcul Excel. Ce code s'appelle CBF (Code derrière les formulaires).
Dans le VBE, double-cliquez sur le bouton de commande pour accéder au code derrière le bouton.
Une sous-routine pour l'événement de clic pour le bouton sera créée. Nous pouvons taper notre code VBA dans cette routine. Par exemple:
123456 | Sous-marin privé cmdOK_Click()Plage ("A1") = Me.txtPrénomRange("A2") = Me.txtNomRange ("A3") = Me.txtCellPhoneDécharge moiFin du sous-marin |
Cette routine mettra les détails saisis dans les zones de texte dans Excel, puis fermera le formulaire.
Création de zones de texte dans une feuille de calcul Excel
Il est également possible de créer des zones de texte dans la feuille de calcul Excel. Pour ce faire, vous devez activer votre ruban développeur.
Remarque : si vous ne voyez pas le ruban développeur, vous devrez l'activer.
Dans le ruban, sélectionnez Développeur > Insertion > Contrôles ActiveX > TextBox.
Cliquez et faites glisser dans votre feuille de calcul Excel pour dessiner la zone de texte dans la feuille de calcul à la position souhaitée. Relâchez le bouton de la souris pour terminer le dessin de la zone de texte.
La zone de texte sera en mode Conception. Dans ce mode, nous pouvons dimensionner la zone et sélectionner les propriétés de la zone de texte.
Clique sur le Propriétés pour afficher la fenêtre de propriétés de la zone de texte. Dans cette fenêtre, nous pouvons modifier diverses propriétés de la zone de texte telles que le nom de la zone de texte, la couleur du texte, de l'arrière-plan ou de la bordure, le style de la bordure et la police utilisée pour le texte dans la zone de texte par exemple.
Pour utiliser la zone de texte directement dans Excel comme nous l'avons utilisé dans le formulaire VBA ci-dessus, nous avons besoin d'un moyen de renvoyer les données saisies dans la zone de texte dans la feuille Excel. Cela peut être fait en ajoutant un bouton de commande ActiveX à la feuille de calcul et en utilisant le click_event de ce bouton de commande pour renvoyer les informations de la zone de texte à la feuille Excel.
Dans le ruban, sélectionnez Développeur > Insérer > Contrôles ActiveX > Bouton de commande pour ajouter un bouton de commande à votre feuille Excel. Activez la fenêtre Propriétés et modifiez le nom du bouton, la légende du bouton et l'accélérateur du bouton comme indiqué dans l'image ci-dessous.
Double-cliquez sur le bouton pour accéder à l'événement de clic VBA du bouton et tapez le code suivant :
123 | Sous-marin privé cmdOK_Click()Plage ("A1") = Me.txtPrénomFin du sous-marin |
Revenez à la feuille de calcul Excel, assurez-vous que le mode conception est désactivé, puis tapez dans la zone de texte créée.
Cliquez sur le bouton de commande pour renvoyer le texte dans Excel.