VBA ComboBox - Kuidas luua ja kasutada ComboBoxi VBA-s?

Lang L: none (table-of-contents)

Exceli VBA ComboBox

ComboBox on VBA kasutajavormi funktsioon , need erinevad tekstikastidest, kuna tekstikastides kasutatakse ainult teksti ja me lubame kasutajal sisestada mis tahes tüüpi andmeid, kuid liitkastide kasutamisega piirame kasutaja soovitud vastuste tüüpi seega on andmed korras, sarnased loendiandmete valideerimisega Excelis.

ComboBoxi saab võrrelda Exceli, töölehtede rippmenüüga. Kasutasime rippmenüü pakkumiseks andmete valideerimist, kuid VBA-s on olemas kasutajavormi funktsioon, kus seda kasutatakse mis tahes kasutajavormi rippmenüü pakkumiseks, kuid kui tahame Excelis kasutada liitkasti, saame pääsete sellele juurde ka arendaja jaotisest, kust saame luua kombokastid üksikutele või mitmele lahtrile.

Combo Box on väga sarnane rippmenüüga, mis meil on Exceli töölehel; liitkastiga saame salvestada eelnevalt kindlaksmääratud väärtused, nii et kasutajad muudaksid loendi nimekirjast liitkastis kättesaadavaks. Combo Boxi kasutatakse tavaliselt koos kasutajavormidega osana kasutajate sisendi saamisest.

Kasutajavormid on kasulikud, kuid kasutajavormil on teiste tööriistade olemasolu see, mis muudab kasutajavormi nii eriliseks. Üks tööriistadest, mida kasutame sageli kasutajavormi tööriistana, on „ComboBox”.

2 parimat viisi VBA ComboBoxi loomiseks

# 1 - otsekodeerimise kasutamine

Kõigepealt näeme, kuidas kasutada töölehega Combo Boxi. Avage mõni Exceli töövihiku tööleht, minge vahekaardile Arendaja ja selle vahekaardi all on meil tööriist nimega "Lisa". Klõpsake seda ja selle all on meil Excelis kaks võimalust Active X juhtelemendid ja vormikontrollid.

Valige jaotises „Active X juhtelemendid” valik „Kombineeritud kast”.

Nüüd saate selle objekti joonistada mis tahes töölehele.

Paremklõpsake liitkastil ja valige suvand "Atribuudid".

Atribuutide valimisel avaneb see tohutu loend liitkasti omadustest.

Selle liitkasti jaoks anname loetelu osakondade nimedest, seega muutke liitkasti nime omaduseks „DeptComboBox”.

Nüüd viidatakse sellele liitkastile nimi "DeptComboBox". Peame andma eelnevalt kindlaks määratud osakondade nimed, nii et siin on mul osakondade nimede loend.

Nüüd peame lisama need väärtused liitkastide loendisse. Saame seda teha kahel viisil, kodeerimise või nimehalduri kaudu.

Topeltklõpsake Comboboxil ja see viib teid VBA makroprotseduurile.

Kuid me peame neid osakondade nimesid nägema, kui töövihik avaneb, nii et topeltklõpsake valikul „ThisWorkbook”.

Valige rippmenüüst „Töövihik”.

Valige valikute hulgast „Ava”.

Nüüd loob see tooriku nagu allpool.

Sisestage selle makro sisse allolev kood.

Kood:

Privaatne alamvihik_Open () koos töölehtedega ("Sheet1"). DeptComboBox .AddItem "Finance" .AddItem "Marketing" .AddItem "Merchandising" .AddItem "Operations" .AddItem "Audit" .AddItem "Klienditeenindus" Lõpeb lõpp-alamvarustusega

Ok, nüüd salvestage ja sulgege töövihik. Kui avate töövihiku uuesti, võime selles näha osakondade nimesid.

# 2 - UserFormi kasutamine

Teine võimalus ComboBoxi väärtuste lisamiseks on kasutajavormi kasutamine. Esmalt andke lahtritele nimi "osakond".

Minge Visual Basic Editori ja sisestage suvandisse INSERT kasutajavorm.

Nüüd on loodud uus kasutajavorm.

Kasutajavormi kõrval näeme sellest tööriistakastist valikut „Tööriistakast”, sisestame „Kombineeritud kasti”.

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 = lahtrid (read.Count, 1) .End (xlUp). Rida + 1 lahtrit (LR, 1) .Väärtus = TextBox1.Value lahtrid (LR, 2) .Value = ComboBox1 .Väärtus Lõpp alam

Nüüd topeltklõpsake nuppu „Tühista” ja lisage allpool olev kood.

Looge nüüd töölehel allolev mall.

Nüüd käivitage kasutajavorm ja see avaneb niimoodi.

Sisestage töötaja nimi ja valige liitnimekirjast osakonna nimi.

Klõpsake nuppu ESITA ja vaadake maagiat.

Saime sisestatud väärtused meie loodud tabelivormingusse.

Asjad, mida meeles pidada

  • Ka COMBO BOXil on oma omadused.
  • Väärtuste lisamine loendisse toimub kahel viisil. Üks on kodeerimisviis ja teine ​​on vahemiku nime viide.
  • COMBO BOX on tavaliselt kasutajavormi osa.

Huvitavad Artiklid...