„VBA ComboBox“ Kaip sukurti ir naudoti „ComboBox“ VBA?

„Excel VBA ComboBox“

„ComboBox“ yra vartotojo formos funkcija VBA , jie skiriasi nuo teksto laukelių, nes teksto laukeliuose yra tik tekstas ir mes leidžiame vartotojui įvesti bet kokio tipo duomenis, tačiau naudodami kombinuotus laukelius mes apribojame vartotojo norimą atsakymų tipą taigi duomenys tvarkingi, jie yra panašūs į sąrašo duomenų patvirtinimą programoje „Excel“.

„ComboBox“ galima palyginti su išskleidžiamuoju „Excel“, darbalapių sąrašu. Norėdami pateikti išskleidžiamąjį meniu, naudojome duomenų patvirtinimą, tačiau VBA yra vartotojo formos funkcija, kur ji naudojama išskleidžiamajam meniu pateikti bet kurioje vartotojo formoje, tačiau jei norime naudoti „Excel“ kombinuotą laukelį, galime taip pat prieiti prie jo iš kūrėjo skyriaus, iš ten galime sukurti kombinuotas dėžutes atskiroms ar kelioms ląstelėms.

„Combo Box“ yra labai panašus į išskleidžiamąjį sąrašą, kurį turime „Excel“ darbalapyje; naudodami kombinuotą laukelį galime išsaugoti iš anksto nustatytas vertes, kad vartotojai pasirinktų iš sąrašo, esančio kombinuotame laukelyje. „Combo Box“ paprastai naudojamas kartu su vartotojo formomis, norint gauti naudotojų įvestį.

Vartotojo formos yra naudingos, tačiau vartotojo formoje yra kitų įrankių, dėl kurių vartotojo forma yra tokia ypatinga. Vienas iš įrankių, kurį dažnai naudojame kaip vartotojo formos įrankį, yra „ComboBox“.

2 populiariausi VBA „ComboBox“ kūrimo būdai

# 1 - tiesioginio kodavimo naudojimas

Pirmiausia pamatysime, kaip naudoti „Combo Box“ su darbalapiu. Atidarykite bet kurį „Excel“ darbaknygės darbalapį, eikite į skirtuką „Kūrėjas“ ir šiame skirtuke turime įrankį pavadinimu „Įterpti“. Spustelėkite tai, tada mes turime dvi parinktis „Active X“ valdikliai ir formos valdikliai „Excel“.

Skiltyje „Active X Controls“ pasirinkite „Combo Box“.

Dabar galite piešti šį objektą bet kuriame darbalapyje.

Dešiniuoju pelės mygtuku spustelėkite kombinuotą laukelį ir pasirinkite parinktį „Ypatybės“.

Kai pasirinksite ypatybes, tai atvers didžiulį kombinuoto langelio savybių sąrašą.

Šiam kombinuotam laukeliui pateiksime skyrių pavadinimų sąrašą, todėl pakeiskite kombinuoto laukelio pavadinimo ypatybę į „DeptComboBox“.

Dabar šis kombinuotas langelis bus pavadintas „DeptComboBox“. Turime pateikti iš anksto nustatytus skyrių pavadinimus, todėl čia turiu skyrių pavadinimų sąrašą.

Dabar turime pridėti šias vertes į kombinuotų laukelių sąrašą. Tai galime padaryti dviem būdais: per kodavimą arba per vardų tvarkytuvę.

Dukart spustelėkite „Combobox“ ir pateksite į VBA makrokomandą.

Bet mes turime pamatyti šiuos skyrių pavadinimus, kai atsidarys darbaknygė, todėl dukart spustelėkite „ThisWorkbook“.

Išskleidžiamajame sąraše pasirinkite „Darbaknygė“.

Iš parinkčių pasirinkite „Atidaryti“.

Dabar jis sukurs tuščią, kaip nurodyta žemiau.

Šios makrokomandos viduje įveskite žemiau esantį kodą.

Kodas:

Private Sub Workbook_Open() With Worksheets("Sheet1").DeptComboBox .AddItem "Finance" .AddItem "Marketing" .AddItem "Merchandising" .AddItem "Operations" .AddItem "Audit" .AddItem "Client Servicing" End With End Sub

Ok, now save and close the workbook. When you reopen the workbook, we could see the department names in it.

#2 - Using UserForm

Another way of adding values to the ComboBox is by using user form. First, give a name to cells as “Department.”

Go to Visual Basic Editor and insert User Form from the INSERT option.

Now the new user form is created.

Next to the user form, we can see “Toolbox” from this toolbox, we can insert “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:

Privatus antrinis „CommandButton1_Click“ (Dim Dim LR As Long LR = Cells (Rows.Count, 1). End (xlUp). Row + 1 Cells (LR, 1). Value = TextBox1.Value Cells (LR, 2). Value = ComboBox1 .Vertės pabaigos sub

Dabar dukart spustelėkite mygtuką „CANCEL“ ir pridėkite žemiau esantį kodą.

Dabar darbalapyje sukurkite tokį šabloną kaip žemiau.

Dabar paleiskite vartotojo formą ir ji atsidarys taip.

Įveskite darbuotojo vardą ir pasirinkite skyriaus pavadinimą iš kombinuoto sąrašo.

Spustelėkite mygtuką PATEIKTI ir pamatysite magiją.

Gavome reikšmes, įrašytas mūsų sukurtu lentelės formatu.

Ką reikia atsiminti

  • „COMBO BOX“ taip pat turi savų savybių.
  • Pridedant vertes į sąrašą galima dviem būdais. Vienas yra kodavimo būdas, o kitas - diapazono pavadinimo nuoroda.
  • COMBO BOX paprastai yra vartotojo formos dalis.

Įdomios straipsniai...