Μετάβαση στο κύριο περιεχόμενο

 Πώς να δημιουργήσετε αναπτυσσόμενη λίστα αλλά να εμφανίσετε διαφορετικές τιμές στο Excel;

Συγγραφέας: Xiaoyang Τελευταία τροποποίηση: 2022-07-25

Στο φύλλο εργασίας του Excel, μπορούμε γρήγορα να δημιουργήσουμε μια αναπτυσσόμενη λίστα με τη δυνατότητα επικύρωσης δεδομένων, αλλά, έχετε προσπαθήσει ποτέ να δείξετε μια διαφορετική τιμή όταν κάνετε κλικ στην αναπτυσσόμενη λίστα; Για παράδειγμα, έχω τα ακόλουθα δύο δεδομένα στηλών στη στήλη Α και στη στήλη Β, τώρα, πρέπει να δημιουργήσω μια αναπτυσσόμενη λίστα με τις τιμές στη στήλη Όνομα, αλλά, όταν επιλέγω το όνομα από την αναπτυσσόμενη αναπτυσσόμενη λίστα, η αντίστοιχη Η τιμή στη στήλη Αριθμός εμφανίζεται όπως φαίνεται το ακόλουθο στιγμιότυπο οθόνης. Αυτό το άρθρο θα εισαγάγει τις λεπτομέρειες για την επίλυση αυτής της εργασίας.

dropdown doc διαφορετικές τιμές 1

Δημιουργήστε αναπτυσσόμενη λίστα αλλά δείξτε διαφορετική τιμή στο κελί της αναπτυσσόμενης λίστας


Δημιουργήστε αναπτυσσόμενη λίστα αλλά δείξτε διαφορετική τιμή στο κελί της αναπτυσσόμενης λίστας

Για να ολοκληρώσετε αυτήν την εργασία, κάντε τα παρακάτω βήμα προς βήμα:

1. Δημιουργήστε ένα όνομα εύρους για τις τιμές κελιού που θέλετε να χρησιμοποιήσετε στην αναπτυσσόμενη λίστα, σε αυτό το παράδειγμα, θα εισαγάγω το αναπτυσσόμενο όνομα όνομα Box, και στη συνέχεια πατήστε εισάγετε κλειδί, δείτε το στιγμιότυπο οθόνης:

dropdown doc διαφορετικές τιμές 2

2. Στη συνέχεια, επιλέξτε κελιά όπου θέλετε να εισαγάγετε την αναπτυσσόμενη λίστα και κάντε κλικ στο ημερομηνία > επικύρωση δεδομένων > επικύρωση δεδομένων, δείτε το στιγμιότυπο οθόνης:

dropdown doc διαφορετικές τιμές 3

3. Στην επικύρωση δεδομένων πλαίσιο διαλόγου, κάτω από το ρυθμίσεις καρτέλα, επιλέξτε Λιστα από το Επιτρέψτε αναπτυσσόμενο μενού και, στη συνέχεια, κάντε κλικ dropdown doc διαφορετικές τιμές 5 για να επιλέξετε τη λίστα Όνομα που θέλετε να χρησιμοποιήσετε ως αναπτυσσόμενες τιμές στο Πηγή πλαίσιο κειμένου. Δείτε το στιγμιότυπο οθόνης:

dropdown doc διαφορετικές τιμές 4

4. Αφού εισαγάγετε την αναπτυσσόμενη λίστα, κάντε δεξί κλικ στην καρτέλα ενεργού φύλλου και επιλέξτε Προβολή κωδικού από το μενού περιβάλλοντος και στο ανοιχτό Microsoft Visual Basic για εφαρμογές παράθυρο, αντιγράψτε και επικολλήστε τον ακόλουθο κώδικα στην κενή ενότητα:

Κωδικός VBA: Εμφάνιση διαφορετικής τιμής από την αναπτυσσόμενη λίστα:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
    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

dropdown doc διαφορετικές τιμές 6

Note: Στον παραπάνω κωδικό, ο αριθμός 5 εντός Αν Target.Column = 5 Στη συνέχεια Το σενάριο είναι ο αριθμός της στήλης που βρίσκεται η αναπτυσσόμενη λίστα σας, το "αναπτυσσόμενο" σε αυτό selectNum = Application.VLookup (επιλεγμένοNa, ActiveSheet.Range ("dropdown"), 2, False) Ο κωδικός είναι το όνομα εύρους που έχετε δημιουργήσει στο βήμα 1. Μπορείτε να τα αλλάξετε ανάλογα με τις ανάγκες σας.

5. Στη συνέχεια, αποθηκεύστε και κλείστε αυτόν τον κώδικα, τώρα, όταν επιλέγετε ένα στοιχείο από την αναπτυσσόμενη λίστα, εμφανίζεται μια σχετική διαφορετική τιμή στο ίδιο κελί, δείτε το στιγμιότυπο οθόνης:

dropdown doc διαφορετικές τιμές 7


Επίδειξη: Δημιουργία αναπτυσσόμενης λίστας αλλά εμφάνιση διαφορετικών τιμών στο Excel

Kutools για Excel: με περισσότερα από 300 εύχρηστα πρόσθετα του Excel, δωρεάν δοκιμή χωρίς περιορισμό σε 30 ημέρες. Λήψη και δωρεάν δοκιμή τώρα!

 

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

🤖 Kutools AI Aide: Επανάσταση στην ανάλυση δεδομένων με βάση: Ευφυής Εκτέλεση   |  Δημιουργία κώδικα  |  Δημιουργία προσαρμοσμένων τύπων  |  Αναλύστε δεδομένα και δημιουργήστε γραφήματα  |  Επίκληση Λειτουργιών Kutools...
Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

Περιγραφή


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!

 

Comments (44)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hello everyone,

About two years ago, @skyyang posted the following formula, which works perfectly:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
Dim xRg As Range
selectedNa = Target.Value
If Target.Column = 5 Then
Set xRg = ActiveWorkbook.Names("DropDown").RefersToRange
selectedNum = Application.VLookup(selectedNa, xRg, 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
End If
End If
End Sub


However, I have six sections each needing the same results from the DDL name range. How do I get this formula to apply to more than one column please?

Any help would be greatly appreciated 🙂
This comment was minimized by the moderator on the site
How can I use this formula if the data for the drop down is on a sheet named materials?

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
selectedNa = Target.Value
If Target.Column = 4 Then
selectedNum = Application.VLookup(selectedNa, ActiveSheet.Range("Material_List"), 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
End If
End If
End Sub
This comment was minimized by the moderator on the site
Can this be applied to certain cells only instead of the whole column? It’s coming back as #N/A for some areas that i don't need this formula for. Thanks
This comment was minimized by the moderator on the site
The code I have used is below:


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



This works exactly how I need it too, however, when I save, close and then re-open the excel document, this has disappeared from the 'View Code' window and I have to re-insert the code again?????

Please help!
This comment was minimized by the moderator on the site
I have even saved the document as a Excel Macro-Enabled Workbook
This comment was minimized by the moderator on the site
Can you do multiple drop down lists like this on the same worksheet tab? How will the vba code be adjusted to accommodate different lists for the sheet?
This comment was minimized by the moderator on the site
Is there a way to return multiple selections to the same field? I.E. I want to show the numbers for Tedi, Dave and Lucy on a single field seperated by a comma.Many thanks.
This comment was minimized by the moderator on the site
This works for me but is there a way to allow multiple selections in the same cell? I.e. I wanted to return the numbers for Tedi, Lucy and Dave in a single field seperated by a comma?
This comment was minimized by the moderator on the site
Can this be done on different sheets? I mean, on sheet1 the range and on sheet2 the dropdown. How do I have to code this? Thanks.
This comment was minimized by the moderator on the site
Hello, Muhammd,To apply the drop down list in different worksheet, the following code may help you:Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
Dim xRg As Range
selectedNa = Target.Value
If Target.Column = 5 Then
Set xRg = ActiveWorkbook.Names("DropDown").RefersToRange
selectedNum = Application.VLookup(selectedNa, xRg, 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
End If
End If
End Sub


Please try, thank you!
This comment was minimized by the moderator on the site
trying to do multiple drop downs sheet 1 , returning different worksheet. Is this possible as when i select in separate dropdown the sam numbers it does not work For example
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice

selectedNa = Target.Value
If Target.Column = 2 Then
Set xRg = ActiveWorkbook.Names("Supervisors").RefersToRange
selectedNum = Application.VLookup(selectedNa, xRg, 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
selectedNa = Target.Value
End If
End If
selectedNa = Target.Value
If Target.Column = 9 Then
Set xRg = ActiveWorkbook.Names("Earth").RefersToRange
selectedNum = Application.VLookup(selectedNa, xRg, 2, False)
If Not IsError(selectedNum) Then
Target.Value = selectedNum
selectedNa = Target.Value

End If
End If
End Sub
This comment was minimized by the moderator on the site
Good morning i hope someone can help me.I used the VBA code above and it worked perfectly giving me my drop down showing me Different Values In Drop Down List Cell.My problem is that I need a second drop down list showing different values in a second list cell, on the same sheet, can anyone help me in doing this Kind Regards Rene
This comment was minimized by the moderator on the site
Se pueden usar diferentes “dropdown” en la misma hoja, para diferentes columnas y con diferentes rangos?Me explico, tengo una hoja en la que los usuarios introducen diferentes datos. En dos columnas 5 y 12 necesito validar la entrada con respecto a dos rangos diferentes de datos. Lo he probado solo con una columna y funciona perfectamente, pero no encuentro la manera de modificar el código VBA para la segunda columna
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations