Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment créer une liste déroulante mais afficher des valeurs différentes dans Excel?

Dans la feuille de calcul Excel, nous pouvons rapidement créer une liste déroulante avec la fonction de validation des données, mais avez-vous déjà essayé d'afficher une valeur différente lorsque vous cliquez sur la liste déroulante? Par exemple, j'ai les deux colonnes suivantes dans la colonne A et la colonne B, maintenant, je dois créer une liste déroulante avec les valeurs dans la colonne Nom, mais, lorsque je sélectionne le nom de la liste déroulante créée, le correspondant La valeur dans la colonne Nombre est affichée comme capture d'écran suivante. Cet article présentera les détails pour résoudre cette tâche.

doc dropdown différentes valeurs 1

Créer une liste déroulante mais afficher une valeur différente dans la liste déroulante


Créer une liste déroulante mais afficher une valeur différente dans la liste déroulante

Pour terminer cette tâche, veuillez suivre les étapes suivantes:

1. Créez un nom de plage pour les valeurs de cellule que vous souhaitez utiliser dans la liste déroulante. Dans cet exemple, je vais entrer le nom de la liste déroulante dans la liste déroulante. Zone Nom, puis appuyez sur Entrer touche, voir capture d'écran:

doc dropdown différentes valeurs 2

2. Sélectionnez ensuite les cellules dans lesquelles vous souhaitez insérer la liste déroulante, puis cliquez sur Données > Validation des données > Validation des données, voir capture d'écran:

doc dropdown différentes valeurs 3

3. Dans le Validation des données boîte de dialogue, sous Réglages onglet, choisissez liste du Permettre déroulant, puis cliquez doc dropdown différentes valeurs 5 pour sélectionner la liste de noms que vous souhaitez utiliser comme valeurs déroulantes dans le Source zone de texte. Voir la capture d'écran:

doc dropdown différentes valeurs 4

4. Après avoir inséré la liste déroulante, cliquez avec le bouton droit de la souris sur l'onglet de la feuille active et sélectionnez Voir le code à partir du menu contextuel, et dans le Microsoft Visual Basic pour les applications fenêtre, copiez et collez le code suivant dans le module vide:

Code VBA: affiche une valeur différente de la liste déroulante:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20161026
    selectedNa = Target.Value
    If Target.Column = 5 Then
        selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("dropdown"), 2, False)
        If Not IsError(selectedNum) Then
            Target.Value = selectedNum
        End If
    End If
End Sub

doc dropdown différentes valeurs 6

Note: Dans le code ci-dessus, le nombre 5 au niveau Si Target.Column = 5 Then script est le numéro de colonne que votre liste déroulante situé, le "déroulante" dans ce selectedNum = Application.VLookup (selectedNa, ActiveSheet.Range ("dropdown"), 2, Faux) code est le nom de plage que vous avez créé à l'étape 1. Vous pouvez les changer à votre besoin.

5. Puis enregistrez et fermez ce code, maintenant, lorsque vous sélectionnez un élément dans la liste déroulante, une valeur relative différente est affichée dans la même cellule, voir capture d'écran:

doc dropdown différentes valeurs 7


Démo: Créer une liste déroulante mais afficher des valeurs différentes dans Excel

Kutools for Excel: avec plus que 200 compléments Excel pratiques, libre d'essayer sans limitation dans les jours 60. Téléchargez et essai gratuit maintenant!



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    ty · 1 months ago
    this doesn't work in current versions of excel- outdated. Data validation then list no longer shows up in vba as an excel object have tried already multiple times and it doesn't show up.
  • To post as a guest, your comment is unpublished.
    Charmin · 1 years ago
    How does the formula work when you want to list the data on a separate sheet/tab in the workbook?
  • To post as a guest, your comment is unpublished.
    Charmin · 1 years ago
    How does the formula the work when you want to add the data on a separate sheet in the workbook? I want to hide the data.
    • To post as a guest, your comment is unpublished.
      Phyo · 5 months ago
      Change here bro!
      selectedNum = Application.VLookup(selectedNa, Worksheets("YourSheetName").Range("dropdown"), 2, False)
  • To post as a guest, your comment is unpublished.
    Mike K · 1 years ago
    Nothing more frustrating than typing in a detailed question only to have it blown away. If you type the wrong 6 digit code to verify your human, it wipes out the posted message. Might want to fix that.

    Now my comment is this: I tried to do the exact same thing you showed in the video and written instructions and all I get is when I select a name in the list is the name and not the number. Also, how is this even working since data validation should limit the choices to what's in the list only. How is this tricking the system?

    In the past I've always had to assign vba code to button or a shortcut, how is this code activated? How do you test to make sure it's working?
  • To post as a guest, your comment is unpublished.
    Lee Ann Brennan · 2 years ago
    What if I want to do more than one dropdown that returns different values on the same worksheet? Can you show me an example of the coding for two or more?
    • To post as a guest, your comment is unpublished.
      Tony · 5 months ago
      Lee Ann

      If you just copy and paste the code from the If to the EndIf and change the column # and Table it should work:


      Sub Worksheet_Change(ByVal Target As Range)
      selectedNa = Target.Value
      If Target.Column = 5 Then
      selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("dropdown"), 2, False)
      If Not IsError(selectedNum) Then
      Target.Value = selectedNum
      End If
      End If
      If Target.Column = 9 Then
      selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("dropdown1"), 2, False)
      If Not IsError(selectedNum) Then
      Target.Value = selectedNum
      End If
      End If
      End Sub

      I'm not saying this is the correct way but it worked on my test version. I'm using Excel 2013