VBA ComboBox - Πώς να δημιουργήσετε και να χρησιμοποιήσετε το ComboBox στο VBA;

Πίνακας περιεχομένων

ComboBox Excel VBA

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

Το ComboBox μπορεί να συγκριθεί με μια αναπτυσσόμενη λίστα στο Excel, σε φύλλα εργασίας. Χρησιμοποιήσαμε την επικύρωση δεδομένων για να παρέχουμε ένα αναπτυσσόμενο μενού, αλλά στο VBA, υπάρχει μια λειτουργία φόρμας χρήστη όπου χρησιμοποιείται για την παροχή ενός αναπτυσσόμενου σε οποιαδήποτε μορφή χρήστη, αλλά αν θέλουμε να χρησιμοποιήσουμε ένα σύνθετο πλαίσιο στο excel, μπορούμε επίσης πρόσβαση σε αυτό από την ενότητα προγραμματιστών από εκεί μπορούμε να δημιουργήσουμε σύνθετα πλαίσια για μεμονωμένα ή πολλαπλά κελιά.

Το Combo Box μοιάζει πολύ με την αναπτυσσόμενη λίστα που έχουμε σε ένα φύλλο εργασίας excel. Με το σύνθετο πλαίσιο, μπορούμε να αποθηκεύσουμε προκαθορισμένες τιμές, έτσι ώστε οι χρήστες να κάνουν την επιλογή από τη λίστα διαθέσιμη από το σύνθετο πλαίσιο. Το Combo Box χρησιμοποιείται γενικά μαζί με φόρμες χρήστη ως μέρος της λήψης της εισόδου από τους χρήστες.

Οι φόρμες χρηστών είναι χρήσιμες αλλά το να έχετε άλλα εργαλεία στη φόρμα χρήστη είναι αυτό που κάνει τη φόρμα χρήστη τόσο ξεχωριστή. Ένα από τα εργαλεία που χρησιμοποιούμε συχνά ως εργαλείο για τη φόρμα χρήστη είναι το "ComboBox".

Κορυφαίοι 2 τρόποι δημιουργίας ενός συνδυασμού VBA

# 1 - Χρήση άμεσης κωδικοποίησης

Αρχικά, θα δούμε πώς να χρησιμοποιείτε το Combo Box με το φύλλο εργασίας. Ανοίξτε οποιοδήποτε από τα φύλλα εργασίας στο βιβλίο εργασίας excel, μεταβείτε στην καρτέλα Προγραμματιστής και κάτω από αυτήν την καρτέλα, έχουμε ένα εργαλείο που ονομάζεται "Εισαγωγή". Κάντε κλικ σε αυτό και κάτω από αυτό, έχουμε δύο επιλογές Active X Controls & Form Controls στο excel.

Από τα "Active X Controls", επιλέξτε "Combo Box".

Τώρα μπορείτε να σχεδιάσετε αυτό το αντικείμενο σε οποιοδήποτε από τα φύλλα εργασίας.

Κάντε δεξί κλικ στο σύνθετο πλαίσιο και επιλέξτε την επιλογή "Ιδιότητες".

Όταν επιλέγετε ιδιότητες, θα ανοίξει μια τεράστια λίστα ιδιοτήτων ενός σύνθετου πλαισίου.

Για αυτό το σύνθετο πλαίσιο, θα δώσουμε μια λίστα με ονόματα τμημάτων, οπότε αλλάξτε την ιδιότητα ονόματος του συνδυαστικού πλαισίου σε "DeptComboBox".

Τώρα αυτό το σύνθετο πλαίσιο θα αναφέρεται με το όνομα "DeptComboBox". Πρέπει να δώσουμε προκαθορισμένα ονόματα τμημάτων, οπότε εδώ έχω μια λίστα με ονόματα τμημάτων.

Τώρα πρέπει να προσθέσουμε αυτές τις τιμές στη λίστα σύνθετων πλαισίων. Μπορούμε να το κάνουμε με δύο τρόπους, μέσω κωδικοποίησης ή μέσω διαχειριστή ονομάτων.

Κάντε διπλό κλικ στο Combobox και θα σας μεταφέρει στη διαδικασία μακροεντολής VBA.

Αλλά πρέπει να δούμε αυτά τα ονόματα των τμημάτων όταν ανοίξει το βιβλίο εργασίας, οπότε κάντε διπλό κλικ στο "ThisWorkbook".

Από την αναπτυσσόμενη λίστα, επιλέξτε "Βιβλίο εργασίας".

Από τις επιλογές, επιλέξτε "Άνοιγμα".

Τώρα θα δημιουργήσει ένα κενό όπως το παρακάτω.

Μέσα σε αυτήν τη μακροεντολή, εισαγάγετε τον παρακάτω κωδικό.

Κώδικας:

Ιδιωτικό Sub Workbook_Open () With Worksheets ("Sheet1"). DeptComboBox .AddItem "Finance" .AddItem "Marketing" .AddItem "Merchandising" .AddItem "Operations" .AddItem "Audit" .AddItem "Client Servicing" End with End Sub Sub

Εντάξει, τώρα αποθηκεύστε και κλείστε το βιβλίο εργασίας. Όταν ανοίξετε ξανά το βιβλίο εργασίας, θα μπορούσαμε να δούμε τα ονόματα των τμημάτων σε αυτό.

# 2 - Χρήση του UserForm

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

Μεταβείτε στην Επεξεργασία της Visual Basic και εισαγάγετε τη φόρμα χρήστη από την επιλογή INSERT

Τώρα δημιουργείται η νέα φόρμα χρήστη.

Δίπλα στη φόρμα χρήστη, μπορούμε να δούμε "Toolbox" από αυτήν την εργαλειοθήκη, μπορούμε να εισάγουμε "Combo Box"

Now the combo box is embedded in the user form. In this method, to open the properties option, select the combo box and press the F4 key to open the properties window.

Scroll down the properties tab and choose “Row Source.”

For this “Row Source,” enter the name that we had given to department name cells.

Now this combo box holds the reference of the name “Department.”

Now run the user form by using the run button.

Now we can see a list of department names in the combo box on the user form.

Practically user form is associated with a combo box, text box, and many other tools. We will create a simple data entry user form with a text box & combo box.

Create a user form like the below.

Create two Command Buttons.

Double click on the “SUBMIT” button it will open up below macro.

Inside this macro, add the below code.

Code:

Private Sub CommandButton1_Click () Dim LR As Long LR = Cells (Rows.Count, 1). End (xlUp). Row + 1 Cells (LR, 1). Value = TextBox1. Value Cells (LR, 2). Value = ComboBox1 Υποτιμή End End

Τώρα κάντε διπλό κλικ στο κουμπί "ΑΚΥΡΩΣΗ" και προσθέστε τον παρακάτω κωδικό.

Τώρα στο φύλλο εργασίας, δημιουργήστε ένα πρότυπο όπως το παρακάτω.

Τώρα εκτελέστε τη φόρμα χρήστη και θα ανοίξει έτσι.

Εισαγάγετε το όνομα του υπαλλήλου και επιλέξτε το όνομα τμήματος από τη λίστα συνδυασμών.

Κάντε κλικ στο κουμπί ΥΠΟΒΟΛΗ και δείτε τη μαγεία.

Έχουμε τις τιμές που έχουν εισαχθεί στη μορφή πίνακα που έχουμε δημιουργήσει.

Πράγματα που πρέπει να θυμάστε

  • Το COMBO BOX έχει και τις δικές του ιδιότητες.
  • Η προσθήκη τιμών στη λίστα έρχεται με δύο τρόπους. Ο ένας είναι ένας κωδικοποιητικός τρόπος και ένας άλλος είναι μια αναφορά ονόματος εύρους.
  • Το COMBO BOX είναι συνήθως μέρος της φόρμας χρήστη.

ενδιαφέροντα άρθρα...