KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment remplir automatiquement une zone de texte en fonction de la sélection effectuée dans une liste déroulante sur un UserForm Excel ?

AuteurSiluvia Date de modification

Imaginez que vous disposiez d’un tableau comprenant une colonne « Nom » et une colonne « Numéro de personnel », comme illustré ci-dessous. Vous souhaitez créer un UserForm doté d’une liste déroulante affichant tous les noms, ainsi que d’une zone de texte qui met automatiquement à jour le numéro de personnel correspondant dès la sélection d’un nom. La méthode présentée dans cet article vous permettra de réaliser cette fonctionnalité en toute simplicité.

Capture d’écran montrant un tableau avec les colonnes Nom et Numéro de personnel dans Excel

Remplir une zone de texte en fonction de la sélection dans une zone de liste déroulante sur un UserForm à l’aide de VBA


Remplir une zone de texte en fonction de la sélection dans une zone de liste déroulante sur un UserForm à l’aide de VBA

Procédez comme suit pour remplir automatiquement la zone de texte avec la valeur correspondant à votre sélection dans la liste déroulante du UserForm.

1. Appuyez sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

2. Dans la fenêtre Microsoft Visual Basic pour Applications, cliquez sur Insertion > UserForm. Voir la capture d’écran :

Capture d’écran illustrant comment insérer un UserForm dans Excel VBA

3. Insérez ensuite un contrôle Zone de liste déroulante et un contrôle Zone de texte dans le UserForm créé, comme illustré ci-dessous.

Capture d’écran d’un UserForm dans Excel avec une zone de liste déroulante (ComboBox) et une zone de texte (TextBox) ajoutées

4. Cliquez avec le bouton droit sur un espace vide du UserForm, puis sélectionnez Afficher le code dans le menu contextuel. Voir la capture d’écran :

Capture d’écran montrant comment ouvrir la fenêtre de code du UserForm dans Excel VBA

5. Dans la fenêtre (Code) du UserForm qui s’ouvre, copiez et collez le code VBA ci-dessous pour remplacer le code existant.

Code VBA : Remplir une zone de texte en fonction de la sélection dans une zone de liste déroulante sur un UserForm

Dim xRg As Range
'Updated by Extendoffice 2018/1/30
Private Sub UserForm_Initialize()
    Set xRg = Worksheets("Sheet5").Range("A2:B8")
    Me.ComboBox1.List = xRg.Columns(1).Value
End Sub
Private Sub ComboBox1_Change()
    Me.TextBox1.Text = Application.WorksheetFunction.VLookup(Me.ComboBox1.Value, xRg, 2, False)
End Sub

Remarque : dans ce code, A2:B2 correspond à la plage contenant les valeurs que vous souhaitez afficher respectivement dans la liste déroulante et la zone de texte du UserForm. « Feuil5 » est le nom de la feuille contenant cette plage de données. Adaptez ces éléments selon vos besoins.

6. Appuyez sur les touches Alt + Q pour fermer la fenêtre Microsoft Visual Basic pour Applications.

7. Cliquez sur Développeur > Insérer > Bouton de commande (contrôle ActiveX) pour insérer un bouton de commande dans la feuille de calcul.

8. Cliquez avec le bouton droit sur l’onglet de la feuille, puis sélectionnez Afficher le code dans le menu contextuel. Copiez ensuite le code VBA et collez-le dans la fenêtre de code.

Code VBA : Afficher le UserForm

Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
    UserForm1.Show
End Sub

9. Désactivez le mode Création dans votre classeur.

Cliquez sur le bouton de commande pour ouvrir le UserForm spécifié : tous les noms apparaîtront alors regroupés dans la liste déroulante. Dès que vous en sélectionnerez un, son numéro de personnel correspondant s’affichera automatiquement dans la zone de texte, comme illustré ci-dessous.

Capture d’écran montrant le UserForm avec la sélection dans la zone de liste déroulante (ComboBox) qui remplit automatiquement la zone de texte (TextBox) dans Excel


Articles associés :

Meilleurs outils de productivité Office

🤖Kutools IA Aide: Révolutionnez Analyse des données grâce à :Exécution intelligente   |  Générez du code|  Créez formules personnalisées  |  Analysez des données et générez des graphiques|  Appelez Fonctions améliorées
Fonctionnalités populaires:Rechercher, mettre en surbrillance ou Marquer les doublons   |  Supprimer les lignes vides   |  Combinez les colonnes ou cellules sans perdre de données   |   Arrondi sans utiliser de formule...
Super RECHERCHEV:RechercheValeurs avec critères multiples  |  RechercheValeurs avec valeurs multiples  |   RechercheValeurs dans plusieurs feuilles   |   Correspondance floue....
Liste déroulante avancée:Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple....
Gestionnaire de colonnes:Ajouter un nombre précis de colonnes|Déplacer des colonnes|Basculer la visibilité des colonnes masquées|Comparer des plages et des colonnes...
Fonctionnalités vedettes:Mise au point de la grille   |  Vue de conception   |Barre de formule améliorée   | Gestionnaire de classeurs et de feuilles   |  Bibliothèque de ressources(Texte automatique)|  Sélecteur de date   |  Consolider les feuilles de calcul  |  Chiffrer/Déchiffrer les cellules   | Envoyer des e-mails par liste   |  Super Filtre   |   Filtre spécial(Filtrer les cellules avec une police en gras/italique/barré...) ...
… et bien plus encore… et plus encore:(,)Supprimer des caractères spécifiques, ...)|   50+Typesde graphiques(, ...)|   40+ Formules pratiques(Calculer l'âge en fonction de la date de naissance, ...)|   19 Outils d’insertion(,Insérer une image depuis un chemin , ...)|   de conversion (Convertir en mots,Conversion de devises, ...)|Fusionner et scinder   (Fusion avancée des lignes,Diviser les cellules , ...)|, ...)   |
Utilisez Kutools dans la langue de votre choix – disponible en anglais, espagnol, allemand, français, chinois et 40+ autres langues !

Boostez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée.Kutools pour Excel propose plus de 300 fonctionnalités avancées pour améliorer votre productivité et Gagner du temps.Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et rend votre travail bien plus facile

  • Activez l’édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50 % et vous fait économiser des centaines de clics de souris chaque jour !

Tous les compléments Kutools. Un seul installateur

Kutools for Office regroupe les compléments pour Excel, Word, Outlook et PowerPoint, ainsi que Office Tab Pro, ce qui en fait le choix idéal pour les équipes travaillant à travers les applications Office.

ExcelWordOutlookTabsPowerPoint
  • Suite tout-en-un— Compléments Excel, Word, Outlook et PowerPoint + Office Tab Pro
  • Un seul installateur, une seule licence— installation en quelques minutes (compatible MSI)
  • Fonctionne mieux ensemble— productivité optimisée dans toutes les applications Office
  • Essai gratuit de 30 jours avec toutes les fonctionnalités— aucune inscription, aucune carte bancaire
  • Meilleur rapport qualité-prix— économisez par rapport à l’achat de compléments individuels