VBA loendikast

VBA -s saate luua a Loendikast kus kasutaja saab valida ühe loetletud valikutest. Loendiboksi kasutatakse sageli Userformsis, kuid seda saab kasutada ka töölehel. Selles õpetuses saate teada, kuidas loendikast luua, täita ja kustutada. Samuti näete, kuidas saada VBA -s kasutaja valik ja seda koodis kasutada.

Kui soovite õppida ComboBoxi loomist, klõpsake siin: VBA ComboBox

Kui soovite õppida märkeruudu loomist, klõpsake siin: VBA märkeruut

Looge loendikast

Töölehele loendiboksi lisamiseks peate minema lehele Arendaja vahekaart, klõpsake Sisesta ja valige ActiveX -juhtelementide alt Loendikast:

Pilt 1. Sisestage töölehele loendikast

Kui valite lisatud loendikasti, saate klõpsata Omadused all Arendaja vahekaart:

Pilt 2. Loendikasti omaduste muutmine

Siin saate määrata loendiboksi erinevaid atribuute. Alustuseks muutsime atribuuti Nimi et lstListBox. Nüüd saame selle nimega loendikasti kasutada VBA -koodis.

Täida loendikast VBA -koodis

Esiteks peame loendikasti täitma väärtustega. Enamikul juhtudel tuleb töövihiku avamisel täita loendikast. Seetõttu peame objekti loendikasti täitmiseks sisestama koodi Töövihik, protseduur Avatud. See toiming viiakse läbi iga kord, kui kasutaja avab töövihiku. Siin on kood:

123456789 Koos Sheet1.lstListBoxiga.Lisa "John".Lisa "Michael".Lisa "Jennifer".Lisa "Lilly".Lisa "Robert"Lõpeta

Nagu näete pildil 3, täitsime oma nimekirja 5 nimega (John, Michael, Jennifer, Lilly ja Robert):

Pilt 3. Täida loendikast VBA -s

Täitke loendikast lahtrite vahemikust

Teine võimalik viis loendikasti täitmiseks on lasta kasutajal seda teha. Loendiboksi saab siduda lahtrite vahemikuga. Seetõttu värskendatakse loendiboksi selle väärtusega iga kord, kui kasutaja sisestab lahtrite vahemikku uue väärtuse.

Kui soovite selle lubada, peate minema lehele Omadused ListBoxist ja määrake atribuut ListFillRange:

Pilt 4. Täitke loendiboks lahtrite vahemikust

Me sidusime oma Listboxi vahemikuga E2: E5, kuhu panime soovitud nimed (Nathan, Harry, George, Roberta). Seetõttu on loendikast nüüd nende nimedega täidetud.

Hankige VBA -s loendikasti valitud üksus

Listboxi eesmärk on saada kasutajatele valik. Kasutaja valitud väärtuse toomiseks peate kasutama järgmist koodi.

123 Dim strSelectedItem VariantstrSelectedItem = Sheet1.lstListBox.Value

Kasutajate valik on atribuudis Väärtus kohta Sheet1.lstListbox objekti. See väärtus määratakse muutujale strSelectedItem:

Pilt 5. Hankige valitud väärtus VBA loendikastist

Valisime Harry loendikastis ja viis protseduuri läbi. Nagu näete pildil 5, on strSelectedItem on Harry, mis on meie valitud väärtus. Lisaks saate seda muutujat koodis töödelda.

Loendiboksi tühjendamine

Loendikasti tühjendamiseks VBA -s peate kasutama Selge meetod Sheet1.lstListBox objekti. See kustutab loendikastist kõik üksused. Siin on kood:

1 Sheet1.lstListBox.Clear

Koodi täitmisel saame tühja loendikasti:

Pilt 6. Kustutage loendikast

Kasutage kasutajavormis loendiboksi

Nagu me mainisime, kasutatakse Listboxi kõige sagedamini Userformsis. Selleks, et selgitada, kuidas saate seda teha, sisestame esmalt Userformi. VBA redaktoris paremklõpsake mooduli nime, klõpsake nuppu Sisesta ja valida UserForm:

Pilt 7. Sisestage kasutajavorm

Sisestamise juhtelementide kuvamiseks peate lubama Tööriistakast. Selleks klõpsake nuppuTööriistakast ikooni tööriistaribal. Pärast seda saate aknad koos kõigi saadaolevate juhtelementidega. Võite klõpsata ListBox selle loomiseks Userformis.

Pilt 8. Sisestage kasutajavormi loendikast

Me nimetame ComboBoxi cmbComboBox. Selle väärtuste täitmiseks peame meetodisse sisestama järgmise koodi Initsialiseerida objektist UserForm:

12345678910111213 Privaatne alamkasutajaForm_Initialize ()Koos UserForm1.lstListBoxiga.Lisa "John".Lisa "Michael".Lisa "Jennifer".Lisa "Lilly".Lisa "Robert"LõpetaEnd Sub

See kood käivitub iga kord, kui kasutaja Userformi käivitab, ja täidab loendikasti nende viie nimega:

Pilt 9. Kasutajavormi väärtustega loendikast

Kui soovite ComboBoxist valitud väärtust saada, peate töölehel Comboboxi jaoks kasutama sama loogikat, mida on artiklis varem selgitatud.

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave