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

Onglet Office Activer l'édition et la navigation par onglets dans Office, et simplifiez grandement votre travail ...
Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%
  • Réutiliser n'importe quoi: Ajoutez les formules, graphiques et autres éléments les plus utilisés ou les plus complexes à vos favoris et réutilisez-les rapidement.
  • Plus que le texte 20 comprend: Extraire le numéro de la chaîne de texte; Extraire ou supprimer une partie des textes; Convertissez les nombres et les devises en mots anglais.
  • Fusionner les outils: Plusieurs classeurs et feuilles en un; Fusionner plusieurs cellules / lignes / colonnes sans perdre de données; Fusionner les lignes en double et la somme.
  • Outils Split: Fractionner les données en plusieurs feuilles en fonction de la valeur; Un classeur pour plusieurs fichiers Excel, PDF ou CSV; Une colonne à plusieurs colonnes.
  • Coller Sauter Lignes cachées / filtrées; Compte et somme par couleur de fond; Envoyez des e-mails personnalisés à plusieurs destinataires en bloc.
  • Super filtre: Créez des schémas de filtrage avancés et appliquez-les à toutes les feuilles. Trier par semaine, jour, fréquence et plus; Filtre en gras, formules, commentaires ...
  • Plus que de puissantes fonctionnalités 300; Fonctionne avec Office 2007-2019 et 365; Prend en charge toutes les langues; Déploiement facile dans votre entreprise ou organisation.

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 Data > 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!


Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe Créer une liste de diffusion et envoyer des emails ...
  • Super Formula Bar (éditez facilement plusieurs lignes de texte et de formule); Disposition de lecture (facilement lire et éditer un grand nombre de cellules); Coller à la gamme filtrée...
  • Fusionner les cellules / rangées / colonnes sans perdre de données; Contenu des cellules divisées; Combiner les lignes / colonnes en double... Prévenir les cellules en double; Comparer les plages...
  • Sélectionnez Dupliquer ou Unique Des rangées; Sélectionnez les lignes vierges (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux cahiers d'exercices; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de la formule; Créer automatiquement des références à plusieurs feuilles; Insérer des balles, Cases à cocher et plus ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre contenu de cellules et commentaires...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial en gras, en italique ...
  • Combinaison de classeurs et de feuilles de calcul; Fusionner les tables en fonction des colonnes clés; Fractionner les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus que de puissantes fonctionnalités 300. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Fonctionnalités complètes Essai gratuit du jour 30.
kte tab 201905

Office Tab apporte une interface à onglets à Office et simplifie grandement votre travail

  • Activer l'édition par onglets et la lecture 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 réduit le nombre de clics de souris pour vous chaque jour!
fond officetab
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.
    Chaitanya Goud R · 14 days ago
    Hi,
    The code was working fine if we are defining the list and creating the drop-down in the same sheet.
    But how can we achieve defining the list of values and codes in one sheet and the drop-down created in another sheet?
    This same code is not working as it is showing and error in this line ("selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("dropdown"), 2, False)").
    Also, I have a requirement like, if I have multiple lists defined in one sheet with ID and Names and multiple drop-downs in another sheet where one drop-down value is dependent on selected value in another drop-down.

    Hope you understood my query.

    Please help me in resolving this issue.
  • To post as a guest, your comment is unpublished.
    AC · 1 months ago
    Hi!
    This is really useful! Thank you!
    I'm running in the situation where the cell does not update automatically or when using the refresh function. I have to click in another cell and then click back on the cell in work to get it to display the value.
    I am currently working with in Office Standard 2019. Does anyone know if this issue is related to the version on excel i'm using?
  • To post as a guest, your comment is unpublished.
    Dre · 1 months ago
    I need to use the same dropdown in more than one column, what would be the code?
  • To post as a guest, your comment is unpublished.
    Alondra · 1 months ago
    Someone nkows how to search the value from right to left
  • To post as a guest, your comment is unpublished.
    Alondra · 1 months ago
    Private Sub Worksheet_Change(ByVal Target As Range)
    selectedNa = Target.Value
    If Target.Column = 5 Then

    Sheets("Nombre de la hoja en donde esta la lista").Activate
    selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("dropdown"), 2, False)
    Sheets("Nombre de la hoja en donde estas trabajando").Activate
    If Not IsError(selectedNum) Then
    Target.Value = selectedNum
    End If
    End If
    End Sub
  • To post as a guest, your comment is unpublished.
    Alondra · 1 months ago
    cómo buscar un valor hacia la izquierda
  • To post as a guest, your comment is unpublished.
    John J · 2 months ago
    Si los datos de la lista están en otra hoja, cuál sería el código? Gracias.
  • To post as a guest, your comment is unpublished.
    Rizwan Ahmad · 2 months ago
    i want to select multiple option from dropdown list.
    result like this: AA1001,BB1002
    is it possible?
  • To post as a guest, your comment is unpublished.
    Mike · 5 months ago
    Anyone know how to get this to work in google sheets?
  • To post as a guest, your comment is unpublished.
    Marcus · 6 months ago
    How would the code Need to Change if I wanted to create a reference/link in E1 to the source of the Dropdown list based on the selected value?
    The Benefit would be that In case of a change in the dropdown source (e.g. "Henrik" => "Hendrik" the change would automatically get reflected in E1.
  • To post as a guest, your comment is unpublished.
    William · 6 months ago
    In this example, what if you want it to look at a value in each of the cells in 5, but put the value in the adjacent cell in 6
  • To post as a guest, your comment is unpublished.
    ty · 7 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 · 2 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 · 2 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 · 1 years ago
      Change here bro!
      selectedNum = Application.VLookup(selectedNa, Worksheets("YourSheetName").Range("dropdown"), 2, False)
      • To post as a guest, your comment is unpublished.
        César López - Sofpromed · 3 months ago
        "YourSheetName" makes reference to the sheet that contains the data range or the sheet where I want to use the dropdwon list?
  • To post as a guest, your comment is unpublished.
    Mike K · 2 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 · 1 years 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
  • To post as a guest, your comment is unpublished.
    Tina · 2 years ago
    Can this be done on different sheets? I mean, on sheet1 the dropdown and on sheet2 the range. How do I have to code this? Thanks in advance. Tina.