VBA ComboBox - Ako vytvoriť a používať ComboBox vo VBA?

Kombinovaná tabuľka Excel VBA

ComboBox je funkcia používateľského formulára vo VBA , líšia sa od textových polí, pretože textové polia obsahujú iba text a my používateľom umožňujeme zadávať akýkoľvek typ údajov, pomocou kombinovaných polí však obmedzujeme používateľa na požadovaný typ odpovedí teda údaje sú usporiadané, sú podobné ako pri overovaní údajov v zozname v programe Excel.

ComboBox sa dá porovnať s rozbaľovacím zoznamom v programe Excel, v pracovných listoch. Na zabezpečenie rozbaľovacej ponuky sme použili overenie údajov, ale vo VBA existuje funkcia používateľského formulára, kde sa používa na poskytnutie rozbaľovacej ponuky v ľubovoľnej používateľskej forme, ale ak chceme použiť kombinovaný box v programe Excel, môžeme tiež k nej získate prístup zo sekcie pre vývojárov, odkiaľ môžeme vytvárať kombinované polia pre jednotlivé alebo viac buniek.

Kombinovaná schránka je veľmi podobná rozbaľovaciemu zoznamu, ktorý máme v pracovnom hárku programu Excel; pomocou rozbaľovacieho poľa môžeme ukladať vopred určené hodnoty, aby používatelia sprístupnili výber zo zoznamu v rozbaľovacom zozname. Kombinovaný box sa zvyčajne používa spolu s formulármi používateľov ako súčasť získavania vstupov od používateľov.

Používateľské formuláre sú užitočné, ale vďaka tomu, že sú vo formulári používateľa ďalšie nástroje, je formulár používateľa taký výnimočný. Jedným z nástrojov, ktoré často používame ako nástroj pre používateľskú formu, je „ComboBox“.

Najlepšie 2 spôsoby vytvorenia VBA ComboBoxu

# 1 - Používanie priameho kódovania

Najskôr si ukážeme, ako používať Combo Box s pracovným hárkom. Otvorte ktorýkoľvek z pracovných hárkov v zošite programu Excel, prejdite na kartu Vývojár a na tejto karte máme nástroj s názvom „Vložiť“. Kliknite na toto a pod tým máme dve možnosti ovládacích prvkov Active X a ovládacích prvkov formulára v programe Excel.

V časti „Ovládacie prvky Active X“ vyberte možnosť „Kombinovaná skrinka“.

Teraz môžete tento objekt nakresliť na ktorýkoľvek z pracovných hárkov.

Pravým tlačidlom myši kliknite na rozbaľovacie pole a vyberte možnosť „Vlastnosti“.

Keď vyberiete vlastnosti, otvorí sa obrovský zoznam vlastností rozbaľovacieho poľa.

Pre toto rozbaľovacie pole uvedieme zoznam názvov oddelení, preto zmeňte vlastnosť názvu rozbaľovacieho poľa na „DeptComboBox“.

Teraz bude mať toto rozbaľovacie pole názov „DeptComboBox“. Musíme dať vopred určené názvy oddelení, takže tu mám zoznam názvov oddelení.

Teraz musíme tieto hodnoty pridať do zoznamu so zoznamom. Môžeme to urobiť dvoma spôsobmi, prostredníctvom kódovania alebo prostredníctvom manažéra mien.

Dvakrát kliknite na Combobox a dostanete sa k postupu makier VBA.

Tieto názvy oddelení však musíme vidieť, keď sa zošit otvorí, takže dvakrát kliknite na „ThisWorkbook“.

V rozbaľovacom zozname vyberte možnosť „Zošit“.

Z možností vyberte možnosť „Otvoriť“.

Teraz vytvorí prázdne miesto, ako je to uvedené nižšie.

Vo vnútri tohto makra zadajte nasledujúci kód.

Kód:

Súkromný čiastkový zošit_otvorený () s pracovnými hárkami („list1“). DeptComboBox .AddItem „Finance“ .AddItem „Marketing“ .AddItem „Merchandising“ .AddItem „Operations“ .AddItem „Audit“ .AddItem „Služby zákazníkom“ Koniec s End Sub

Dobre, teraz uložte a zatvorte zošit. Po opätovnom otvorení zošita sme v ňom videli názvy oddelení.

# 2 - Používanie UserForm

Ďalším spôsobom pridávania hodnôt do ComboBoxu je použitie užívateľského formulára. Najskôr bunky pomenujte ako „Oddelenie“.

Prejdite do editora jazyka Visual Basic a vložte užívateľský formulár z možnosti VLOŽIŤ.

Teraz je vytvorený nový užívateľský formulár.

Vedľa užívateľského formulára vidíme z tohto panela nástrojov „Toolbox“, môžeme vložiť „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 Koncová hodnota hodnoty

Teraz dvakrát kliknite na tlačidlo „ZRUŠIŤ“ a pridajte nasledujúci kód.

Teraz v pracovnom hárku vytvorte šablónu, ako je uvedené nižšie.

Teraz spustite užívateľský formulár a ten sa otvorí takto.

Zadajte meno zamestnanca a v rozbaľovacom zozname vyberte názov oddelenia.

Kliknite na tlačidlo ODOSLAŤ a uvidíte kúzlo.

Získali sme hodnoty zadané vo formáte tabuľky, ktorý sme vytvorili.

Na čo treba pamätať

  • COMBO BOX má tiež svoje vlastné vlastnosti.
  • Pridanie hodnôt do zoznamu sa deje dvoma spôsobmi. Jeden je spôsob kódovania a druhý je odkaz na názov rozsahu.
  • COMBO BOX je zvyčajne súčasťou užívateľského formulára.

Zaujímavé články...