VBA ComboBox

ComboBoxes επιτρέπουν στους χρήστες να επιλέγουν μια επιλογή από μια αναπτυσσόμενη λίστα μενού. Τα ComboBoxes μπορούν να δημιουργηθούν σε VBA UserForms ή με ένα φύλλο εργασίας Excel. Σε αυτό το σεμινάριο, θα μάθετε πώς να δημιουργείτε και να χειρίζεστε ComboBoxes σε φύλλα εργασίας VBA και Excel.

Αν θέλετε να μάθετε πώς να δημιουργείτε ένα Listbox, κάντε κλικ εδώ: VBA Listbox

Εάν θέλετε να μάθετε πώς να δημιουργείτε ένα πλαίσιο ελέγχου, κάντε κλικ εδώ: Πλαίσιο ελέγχου VBA

Δημιουργήστε ένα φύλλο εργασίας ComboBox στο Excel

Για να εισαγάγετε ένα ComboBox στο φύλλο εργασίας, πρέπει να μεταβείτε στο Καρτέλα προγραμματιστή, Κάντε κλικ Εισάγετε και κάτω από τα στοιχεία ελέγχου ActiveX επιλέξτε Combo Box:

Εικόνα 1. Εισαγάγετε ένα ComboBox στο φύλλο εργασίας

Όταν επιλέγετε το ComboBox που έχετε εισαγάγει, μπορείτε να κάνετε κλικ στο Ιδιότητες σύμφωνα με το Καρτέλα προγραμματιστή:

Εικόνα 2. Αλλαγή ιδιοτήτων ComboBox

Εδώ μπορείτε να ορίσετε διαφορετικές ιδιότητες του ComboBox. Για αρχή, αλλάξαμε το χαρακτηριστικό Ονομα προς το cmbComboBoxΤο Τώρα, μπορούμε να χρησιμοποιήσουμε το ComboBox με αυτό το όνομα σε κώδικα VBA.

Συμπληρώστε ένα ComboBox σε κώδικα VBA

Πρώτον, πρέπει να συμπληρώσουμε το ComboBox με τιμές. Στις περισσότερες περιπτώσεις, ένα ComboBox πρέπει να συμπληρωθεί όταν ανοίξει το βιβλίο εργασίας. Εξαιτίας αυτού, πρέπει να βάλουμε έναν κώδικα για τη συμπλήρωση του ComboBox σε αντικείμενο ΤΕΤΡΑΔΙΟ ΕΡΓΑΣΙΩΝ, διαδικασία Ανοιξε. Αυτή η διαδικασία εκτελείται κάθε φορά που ένας χρήστης ανοίγει το βιβλίο εργασίας. Εδώ είναι ο κωδικός:

123456789 Με το Sheet1.cmbComboBox.AddItem "John".AddItem "Michael".AddItem "Jennifer".AddItem "Lilly".AddItem "Robert"Τέλος με

Όταν κάνετε κλικ στο αναπτυσσόμενο μενού, θα λάβετε 5 ονόματα για να επιλέξετε (John, Michael, Jennifer, Lilly and Robert):

Εικόνα 3. Συμπληρώστε το ComboBox σε VBA

Συμπληρώστε ένα ComboBox από μια περιοχή κελιών

Ένας άλλος πιθανός τρόπος συμπλήρωσης ενός ComboBox είναι να αφήσετε έναν χρήστη να το κάνει. Ένα ComboBox μπορεί να συνδεθεί με την περιοχή κελιών. Σε αυτήν την προσέγγιση, κάθε φορά που ένας χρήστης εισάγει μια νέα τιμή στην περιοχή κελιών, το ComboBox θα ενημερώνεται με αυτήν την τιμή.

Εάν θέλετε να το ενεργοποιήσετε, πρέπει να μεταβείτε στο Ιδιότητες του ComboBox και ορίστε το χαρακτηριστικό ListFillRange στην περιοχή κελιών (στην περίπτωσή μας Ε2: Ε5):

Εικόνα 4. Συμπληρώστε το ComboBox από την περιοχή κελιών

Συνδέσαμε το ComboBox μας με το εύρος E2: E5, όπου βάζουμε ονόματα που θέλουμε (Nathan, Harry, George, Roberta). Ως αποτέλεσμα, το ComboBox συμπληρώνεται τώρα με αυτά τα ονόματα:

Εικόνα 5. Συμπληρωμένο ComboBox από την περιοχή κελιών

Αποκτήστε ένα επιλεγμένο στοιχείο ενός ComboBox στο VBA

Ο σκοπός ενός ComboBox είναι να πάρει μια επιλογή χρηστών. Για να ανακτήσετε μια επιλογή χρηστών, πρέπει να χρησιμοποιήσετε αυτόν τον κωδικό:

123 Dim strSelectedItem As VariantstrSelectedItem = Sheet1.cmbComboBox.Value

Η επιλογή χρηστών βρίσκεται στο χαρακτηριστικό αξία του Sheet1.cmbComboBox αντικείμενο. Αυτή η τιμή εκχωρείται στη μεταβλητή strSelectedItem:

Εικόνα 6. Λάβετε μια επιλεγμένη τιμή από το ComboBox στο VBA

Επιλέξαμε Τζούλια στο ComboBox και εκτέλεσε τη διαδικασία. Όπως μπορείτε να δείτε στην εικόνα 5, η τιμή του strSelectedItem είναι Τζούλια, η οποία είναι η τιμή που επιλέξαμε. Τώρα μπορείτε να επεξεργαστείτε αυτήν τη μεταβλητή περαιτέρω στον κώδικα.

Διαγράψτε ένα ComboBox

Εάν θέλετε να διαγράψετε ένα ComboBox στο VBA, πρέπει να το χρησιμοποιήσετε Σαφή μέθοδος για Sheet1.lstComboBox αντικείμενο. Θα διαγράψει όλα τα στοιχεία από το ComboBox. Εδώ είναι ο κωδικός:

1 Sheet1.cmbComboBox.Clear

Όταν εκτελούμε τον κώδικα, λαμβάνουμε το κενό ComboBox:

Εικόνα 7. Διαγράψτε το ComboBox

Χρησιμοποιήστε ένα ComboBox σε μια μορφή χρήστη

Όπως αναφέραμε, το Combobox χρησιμοποιείται συχνότερα σε Userforms. Για να εξηγήσουμε πώς μπορείτε να το κάνετε, θα εισαγάγουμε πρώτα μια φόρμα χρήστη. Στο πρόγραμμα επεξεργασίας VBA, κάντε δεξί κλικ στο όνομα μονάδας, κάντε κλικ στο Εισάγετε και επιλέξτε UserForm:

Εικόνα 8. Εισαγάγετε μια φόρμα χρήστη

Για να εμφανίσετε στοιχεία ελέγχου για εισαγωγή, πρέπει να ενεργοποιήσετε το ΕργαλειοθήκηΤο Για να το κάνετε αυτό, κάντε κλικ στοΕργαλειοθήκη εικονίδιο στη γραμμή εργαλείων. Μετά από αυτό, θα λάβετε τα παράθυρα με όλα τα διαθέσιμα στοιχεία ελέγχου. Μπορείτε να κάνετε κλικ στο ComboBox για να το δημιουργήσετε στο Userform.

Εικόνα 9. Εισαγάγετε ένα ComboBox στο Userform

Θα ονομάσουμε το ComboBox cmbComboBoxΤο Για να το συμπληρώσουμε με τιμές, πρέπει να βάλουμε τον ακόλουθο κώδικα στη μέθοδο Αρχικοποίηση του αντικειμένου UserForm:

12345678910111213 Private Sub UserForm_Initialize ()Με UserForm1.cmbComboBox.AddItem "John".AddItem "Michael".AddItem "Jennifer".AddItem "Lilly".AddItem "Robert"Τέλος μεΤέλος υπο

Αυτός ο κωδικός ενεργοποιείται κάθε φορά που ένας χρήστης εκτελεί το Userform και συμπληρώνει το Combobox με αυτά τα 5 ονόματα:

Εικόνα 10. Το ComboBox με τιμές στο Userform

Εάν θέλετε να λάβετε την επιλεγμένη τιμή από το ComboBox, πρέπει να χρησιμοποιήσετε την ίδια λογική για το Combobox σε ένα φύλλο εργασίας, η οποία εξηγείται νωρίτερα στο άρθρο.

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave