Πώς να δημιουργήσετε αναπτυσσόμενη λίστα με πολλές επιλογές ή τιμές στο Excel;
Από προεπιλογή, μπορείτε να επιλέξετε μόνο ένα στοιχείο σε μια αναπτυσσόμενη λίστα επικύρωσης δεδομένων στο Excel. Πώς μπορείτε να κάνετε πολλές επιλογές στην αναπτυσσόμενη λίστα όπως φαίνεται παρακάτω στο gif; Οι μέθοδοι σε αυτό το άρθρο μπορούν να σας βοηθήσουν να λύσετε το πρόβλημα.
Περισσότερα φροντιστήριο για την αναπτυσσόμενη λίστα ...
Δημιουργήστε αναπτυσσόμενη λίστα με πολλές επιλογές με κώδικα VBA
Αυτή η ενότητα παρέχει δύο κωδικούς VBA για να σας βοηθήσουν να κάνετε πολλαπλές επιλογές σε αναπτυσσόμενες λίστες σε ένα φύλλο εργασίας. Οι δύο κωδικοί VBA μπορούν να επιτύχουν:
Μπορείτε να εφαρμόσετε έναν από τους ακόλουθους κωδικούς VBA για να κάνετε πολλαπλές επιλογές σε μια αναπτυσσόμενη λίστα σε ένα φύλλο εργασίας στο Excel. Παρακαλώ κάντε το εξής.
1. Ανοίξτε το φύλλο εργασίας περιέχει τις αναπτυσσόμενες λίστες επικύρωσης δεδομένων από τις οποίες θέλετε να κάνετε πολλές επιλογές. Κάντε δεξί κλικ στην καρτέλα του φύλλου και επιλέξτε Προβολή κωδικού από το μενού περιβάλλοντος.
2. Στο Microsoft Visual Basic για εφαρμογές παράθυρο, αντιγράψτε τον παρακάτω κώδικα VBA στο παράθυρο κώδικα. Δείτε το στιγμιότυπο οθόνης:
Κωδικός VBA 1: Επιτρέπονται πολλαπλές επιλογές σε μια αναπτυσσόμενη λίστα χωρίς διπλότυπα
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2019/11/13
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
If Target.Count > 1 Then Exit Sub
On Error Resume Next
Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
If xRng Is Nothing Then Exit Sub
Application.EnableEvents = False
If Not Application.Intersect(Target, xRng) Is Nothing Then
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or _
InStr(1, xValue1, ", " & xValue2) Or _
InStr(1, xValue1, xValue2 & ",") Then
Target.Value = xValue1
Else
Target.Value = xValue1 & ", " & xValue2
End If
End If
End If
End If
Application.EnableEvents = True
End Sub
3. Πάτα το άλλος + Q πλήκτρα για να κλείσετε το Microsoft Visual Basic για εφαρμογές παράθυρο.
Τώρα μπορείτε να επιλέξετε πολλά στοιχεία από την αναπτυσσόμενη λίστα στο τρέχον φύλλο εργασίας.
Ας υποθέσουμε ότι επιλέξατε ένα στοιχείο κατά λάθος και πρέπει να το αφαιρέσετε χωρίς να καθαρίσετε ολόκληρο το κελί και να ξεκινήσετε από την αρχή. Ο παρακάτω κωδικός 2 VBA μπορεί να σας κάνει τη χάρη.
Κωδικός VBA 2: Επιτρέπονται πολλαπλές επιλογές σε μια αναπτυσσόμενη λίστα χωρίς διπλότυπα (διαγράψτε τα υπάρχοντα στοιχεία επιλέγοντάς τα ξανά)
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2023/01/11
'Updated by Ken Gardner 2022/07/11
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
Dim semiColonCnt As Integer
Dim xType As Integer
If Target.Count > 1 Then Exit Sub
On Error Resume Next
xType = 0
xType = Target.Validation.Type
If xType = 3 Then
Application.ScreenUpdating = False
Application.EnableEvents = False
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or xValue1 = xValue2 & ";" Or xValue1 = xValue2 & "; " Then ' leave the value if only one in list
xValue1 = Replace(xValue1, "; ", "")
xValue1 = Replace(xValue1, ";", "")
Target.Value = xValue1
ElseIf InStr(1, xValue1, "; " & xValue2) Then
xValue1 = Replace(xValue1, xValue2, "") ' removes existing value from the list on repeat selection
Target.Value = xValue1
ElseIf InStr(1, xValue1, xValue2 & ";") Then
xValue1 = Replace(xValue1, xValue2, "")
Target.Value = xValue1
Else
Target.Value = xValue1 & "; " & xValue2
End If
Target.Value = Replace(Target.Value, ";;", ";")
Target.Value = Replace(Target.Value, "; ;", ";")
If Target.Value <> "" Then
If Right(Target.Value, 2) = "; " Then
Target.Value = Left(Target.Value, Len(Target.Value) - 2)
End If
End If
If InStr(1, Target.Value, "; ") = 1 Then ' check for ; as first character and remove it
Target.Value = Replace(Target.Value, "; ", "", 1, 1)
End If
If InStr(1, Target.Value, ";") = 1 Then
Target.Value = Replace(Target.Value, ";", "", 1, 1)
End If
semiColonCnt = 0
For i = 1 To Len(Target.Value)
If InStr(i, Target.Value, ";") Then
semiColonCnt = semiColonCnt + 1
End If
Next i
If semiColonCnt = 1 Then ' remove ; if last character
Target.Value = Replace(Target.Value, "; ", "")
Target.Value = Replace(Target.Value, ";", "")
End If
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
End Sub
Notes:
Δημιουργήστε εύκολα αναπτυσσόμενη λίστα με πολλές επιλογές με ένα καταπληκτικό εργαλείο
Εδώ συνιστούμε ανεπιφύλακτα το Αναδυόμενη λίστα πολλαπλών επιλογών χαρακτηριστικό του Kutools για Excel για σενα. Με αυτήν τη δυνατότητα, μπορείτε εύκολα να επιλέξετε πολλά στοιχεία από την αναπτυσσόμενη λίστα σε ένα καθορισμένο εύρος, τρέχον φύλλο εργασίας, τρέχον βιβλίο εργασίας ή όλα τα ανοιχτά βιβλία εργασίας όπως χρειάζεστε.
Πριν από την εφαρμογή Kutools για Excel, σας παρακαλούμε κατεβάστε και εγκαταστήστε το πρώτα.
1. κλικ Kutools > Αναπτυσσόμενη λίστα > Αναδυόμενη λίστα πολλαπλών επιλογών > Ρυθμίσεις. Δείτε screenshot:
2. Στο Ρυθμίσεις αναπτυσσόμενης λίστας πολλαπλών επιλογών πλαίσιο διαλόγου, διαμορφώστε τα εξής.
- 2.1) Προσδιορίστε το πεδίο εφαρμογής στο Εφαρμογή σε Ενότητα. Σε αυτήν την περίπτωση, επιλέγω Τρέχον φύλλο εργασίας από το Καθορισμένο πεδίο εφαρμογής αναπτυσσόμενη λίστα;
- 2.2) Στο Κατεύθυνση κειμένου ενότητα, επιλέξτε μια κατεύθυνση κειμένου με βάση τις ανάγκες σας.
- 2.3) Στο Διαχωριστής πλαίσιο, εισαγάγετε ένα οριοθέτη το οποίο θα χρησιμοποιήσετε για να διαχωρίσετε τις πολλαπλές τιμές.
- 2.4) Ελέγξτε το Μην προσθέσετε διπλότυπα στο πλαίσιο Επιλογές ενότητα εάν δεν θέλετε να δημιουργήσετε διπλότυπα σε αναπτυσσόμενα κελιά λίστας.
- 2.5) Κάντε κλικ στο OK κουμπί. Δείτε το στιγμιότυπο οθόνης:
3. Κάντε κλικ Kutools > Αναπτυσσόμενη λίστα > Αναδυόμενη λίστα πολλαπλών επιλογών για να ενεργοποιήσετε τη λειτουργία.
Τώρα μπορείτε να επιλέξετε πολλά στοιχεία από την αναπτυσσόμενη λίστα στο τρέχον φύλλο εργασίας ή οποιοδήποτε εύρος έχετε καθορίσει στο βήμα 2.
Εάν θέλετε να έχετε μια δωρεάν δοκιμή (30-ημέρα) αυτού του βοηθητικού προγράμματος, κάντε κλικ για να το κατεβάσετεκαι μετά πηγαίνετε για να εφαρμόσετε τη λειτουργία σύμφωνα με τα παραπάνω βήματα.
Σχετικά άρθρα:
Αυτόματη συμπλήρωση κατά την πληκτρολόγηση στην αναπτυσσόμενη λίστα του Excel
Εάν έχετε μια αναπτυσσόμενη λίστα επικύρωσης δεδομένων με μεγάλες τιμές, πρέπει να μετακινηθείτε προς τα κάτω στη λίστα μόνο για να βρείτε την κατάλληλη ή να πληκτρολογήσετε ολόκληρη τη λέξη στο πλαίσιο λίστας απευθείας. Εάν υπάρχει μέθοδος αυτόματης συμπλήρωσης κατά την πληκτρολόγηση του πρώτου γράμματος στην αναπτυσσόμενη λίστα, όλα θα γίνουν ευκολότερα. Αυτό το σεμινάριο παρέχει τη μέθοδο για την επίλυση του προβλήματος.
Δημιουργήστε αναπτυσσόμενη λίστα από άλλο βιβλίο εργασίας στο Excel
Είναι πολύ εύκολο να δημιουργήσετε μια αναπτυσσόμενη λίστα επικύρωσης δεδομένων μεταξύ των φύλλων εργασίας σε ένα βιβλίο εργασίας. Αλλά αν τα δεδομένα της λίστας που χρειάζεστε για την επικύρωση δεδομένων εντοπίζονται σε άλλο βιβλίο εργασίας, τι θα κάνατε; Σε αυτό το σεμινάριο, θα μάθετε πώς μπορείτε να δημιουργήσετε μια αναπτυσσόμενη λίστα από άλλο βιβλίο εργασίας στο Excel λεπτομερώς.
Δημιουργήστε μια αναπτυσσόμενη λίστα με δυνατότητα αναζήτησης στο Excel
Για μια αναπτυσσόμενη λίστα με πολλές τιμές, η εύρεση μιας κατάλληλης δεν είναι εύκολη δουλειά. Προηγουμένως έχουμε εισαγάγει μια μέθοδο αυτόματης συμπλήρωσης της αναπτυσσόμενης λίστας κατά την εισαγωγή του πρώτου γράμματος στο αναπτυσσόμενο πλαίσιο. Εκτός από τη λειτουργία αυτόματης συμπλήρωσης, μπορείτε επίσης να κάνετε αναζήτηση στην αναπτυσσόμενη λίστα για ενίσχυση της αποτελεσματικότητας λειτουργίας στην εύρεση κατάλληλων τιμών στην αναπτυσσόμενη λίστα. Για να κάνετε αναζήτηση στην αναπτυσσόμενη λίστα, δοκιμάστε τη μέθοδο σε αυτό το σεμινάριο.
Αυτόματη συμπλήρωση άλλων κελιών κατά την επιλογή τιμών στην αναπτυσσόμενη λίστα του Excel
Ας υποθέσουμε ότι έχετε δημιουργήσει μια αναπτυσσόμενη λίστα με βάση τις τιμές στην περιοχή κελιών B8: B14. Όταν επιλέγετε οποιαδήποτε τιμή στην αναπτυσσόμενη λίστα, θέλετε οι αντίστοιχες τιμές στην περιοχή κελιών C8: C14 να συμπληρώνονται αυτόματα σε ένα επιλεγμένο κελί. Για την επίλυση του προβλήματος, οι μέθοδοι σε αυτό το σεμινάριο θα σας βοηθήσουν.
Τα καλύτερα εργαλεία παραγωγικότητας του Office
Το Kutools για Excel λύνει τα περισσότερα από τα προβλήματά σας και αυξάνει την παραγωγικότητά σας κατά 80%
- Επαναχρησιμοποίηση: Εισαγάγετε γρήγορα σύνθετοι τύποι, γραφήματα και οτιδήποτε έχετε χρησιμοποιήσει στο παρελθόν. Κρυπτογράφηση κυττάρων με κωδικό πρόσβασης Δημιουργία λίστας αλληλογραφίας και στείλτε email ...
- Super Formula Bar (επεξεργαστείτε εύκολα πολλές γραμμές κειμένου και τύπου). Διάταξη ανάγνωσης (εύκολη ανάγνωση και επεξεργασία μεγάλου αριθμού κελιών). Επικόλληση σε φιλτραρισμένο εύρος...
- Συγχώνευση κελιών / σειρών / στηλών χωρίς απώλεια δεδομένων · Περιεχόμενο διαχωρισμού κελιών Συνδυάστε διπλές σειρές / στήλες... Αποτροπή διπλών κυττάρων; Συγκρίνετε τα εύρη...
- Επιλέξτε Διπλότυπο ή Μοναδικό Σειρές; Επιλέξτε Κενές σειρές (όλα τα κελιά είναι κενά). Σούπερ εύρεση και ασαφής εύρεση σε πολλά βιβλία εργασίας. Τυχαία επιλογή ...
- Ακριβές αντίγραφο Πολλαπλά κελιά χωρίς αλλαγή της αναφοράς τύπου. Αυτόματη δημιουργία αναφορών σε πολλαπλά φύλλα? Εισαγωγή κουκκίδων, Πλαίσια ελέγχου και άλλα ...
- Εξαγωγή κειμένου, Προσθήκη κειμένου, Κατάργηση κατά θέση, Αφαιρέστε το διάστημα; Δημιουργία και εκτύπωση υποσύνολων σελιδοποίησης. Μετατροπή περιεχομένου και σχολίων μεταξύ κελιών...
- Σούπερ φίλτρο (αποθηκεύστε και εφαρμόστε σχήματα φίλτρων σε άλλα φύλλα). Προηγμένη ταξινόμηση ανά μήνα / εβδομάδα / ημέρα, συχνότητα και άλλα. Ειδικό φίλτρο με έντονη, πλάγια ...
- Συνδυάστε βιβλία εργασίας και φύλλα εργασίας; Συγχώνευση πινάκων βάσει βασικών στηλών. Διαχωρίστε τα δεδομένα σε πολλά φύλλα; Μαζική μετατροπή xls, xlsx και PDF...
- Περισσότερα από 300 ισχυρά χαρακτηριστικά. Υποστηρίζει Office / Excel 2007-2021 και 365. Υποστηρίζει όλες τις γλώσσες. Εύκολη ανάπτυξη στην επιχείρηση ή τον οργανισμό σας. Πλήρεις δυνατότητες δωρεάν δοκιμής 30 ημερών. Εγγύηση επιστροφής χρημάτων 60 ημερών.

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
































