Kuidas kasutada ComboBoxi VBA Exceli kasutajavormis?

Lang L: none (table-of-contents):

Anonim

Kasutajavormi kombineeritud kast on nagu rippmenüü, mida saab kasutada saadaolevate valikute hulgast valiku tegemiseks. See on nagu rippmenüü, mille loome töölehtede andmete valideerimise abil.

Enamikus digitaalsetes vormides peate olema näinud vähemalt ühte liitkasti. See oleks võinud olla osariikide loendist osariigi valimiseks, kursus kursuste loendist, riik riikide loendist jne. Sellest artiklist õpime, kuidas VBA kasutajaliidesele kombineeritud kasti lisada, kuidas lähtestada kombineeritud kasti väärtustega ja kuidas seda kastist leida.

KomboBoxi lisamine kasutajavormile

Kasutajavormile kombineeritud kasti lisamiseks peab teil esmalt olema kasutajavorm. Dah !.

Nii et avage VBE, kasutades klahvikombinatsiooni CTRL+F11. Paremklõpsake töövihikut, minge sisestamiseks ja klõpsake Userform. Teile on lisatud kasutajavorm. Siit saate lugeda VBA kasutajate vormide kohta.

Nüüd valige tööriistakastist kombineeritud kast. See on ülemise rea neljas võimalus. Kui te ei näe tööriistakasti. Minge menüüs Vaade ja klõpsake tööriistakasti. Ilmub tööriistakast.

Olen lisanud osariikide sildi, kuna see kombineeritud kast sisaldab mõnede osariikide loendit ja vormi esitamiseks nuppu Esita.

Kuidas lähtestada kasutajavormis kombineeritud kasti?

See on osa, kus enamik inimesi teeb vigu. Mõnikord kirjutavad õppijad väärtuste laadimiseks kombineeritud kasti koodi ja esitavad seejärel nupud. Ja kasutajavormi laadimisel ei näita kombineeritud kast väärtusi.

Kombokasti laadimiseks peaksite enne kasutajavormi laadimist koodi kirjutama. Seda saab teha moodulis, c või nupul, kuhu vorm laaditakse. Kombikastide loendi laadimise kood peaks asuma enne käsku formname.show.

Comboboxi laadimine alamprogrammis UserForm

Oletame, et soovin olekukastis mõnda massiivi kõvasti kodeerida. Nii et ma kirjutan alamprogrammi, mis laadib kasutaja vormi teabe täitmiseks. Vaadake allolevat koodi.

Sub load_userform () state = Massiiv ("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = märgib UserForm1.Show End Sub 

Ma määratlen massiivi "osariigid", mis sisaldab mõnda India osariigi nime. Nüüd kasutan comboboxile juurdepääsuks kasutajanime nime, kuna combobox on kasutajavormi osa.

Minu kasutajavormi nimi on userform1. Ja comboboxi nimi on combobox1. Need on vaikenimed. Saate neid muuta atribuutide aknast.

Järgmisena lähtestan kombineeritud kasti loendi atribuudi olekutega.

Ja siis näitan userform1, kasutades käsku show.

Ülaltoodud koodi käivitamisel on kombineeritud kastil kõik loetletud olekud.

Comboboxi lähtestamine sündmuse UserForm_Initialize () abil.

Teine kombineeritud kasti komponentide kasutajavormile laadimise meetod on kasutajavormi sündmuse initsialiseerimine. See sündmus käivitatakse enne kasutajavormi laadimist. Kõik, mida soovite enne kasutajavormi laadimist teha, saate seda teha siin. Üks neist asjadest on kombineeritud kasti elementide laadimine.

Seega topeltklõpsake kasutajavormi, et avada kasutajavormi objekti kodeerimisala. Nüüd valige vasakpoolsest rippmenüüst userform. Seejärel valige parempoolsest rippmenüüst lähtestamine.

Sisestatakse tühi alamnimi UserForm_Initialize (). Kõik, mis selles alamkirjas on kirjutatud, täidetakse enne kasutajavormi ilmumist.

Niisiis kirjutame siin komboboksi lähtestamiskoodi.

Privaatne alamkasutajaForm_Initialize () märgib = massiivi ("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = osutab lõpp -alamlehele 

Pange tähele, et meil pole siin käsku userform1.show. See on endiselt selles moodulis. Seda alamosa kasutatakse meie kasutajavormi kuvamiseks ekraanil.

Sub load_userform () UserForm1.Show End Sub 

Nii käivitavad kasutajad load_userform sub, kasutades mõnda käsku, nuppu või makroga määratud elementi. Kuna kompilaator käivitab käsu userform1.show, käivitab see kohe sündmuse useforma_initialize (). Hiljem näitab see kasutajatele kasutajavormi.

Märkused:

Kui kirjutate koodi, et lähtestada kombineeritud kasti väärtustega käsunupul 1 klõps, ei näita kombineeritud kast midagi.

Kombokasti väärtuste jaoks lähtestamiseks laadige see igal juhul, kui see juhtub enne, kui kasutaja jõuab lahtrisse.

Väärtuse toomine ComboBoxist

Seega kasutame teatud teabe saamiseks vorme. Ja selle teabe kasutamiseks peame need hankima. Kasutajavormi combobox mis tahes väärtuse saamiseks kasutame atribuuti combobox.value. Üldjuhul toome vormielementidest väärtused alla, kui kasutaja on vormi täitnud ja vormi saatmise nupu abil esitanud. Seega saame kasutada sündmust commandbutton_click. Nii et sisestage käsunupp ja kirjutage sellele saatmine, kui teil seda juba pole. Nüüd topeltklõpsake seda ja olete sündmuse commandButton_click sees.

Nüüd looge väärtuse salvestamiseks muutuja. Soovi korral salvestage see lehele. Lõpuks väljuge vormist, kasutades käsku Unload Me. Nagu on näidatud allolevas koodis.

Privaatne alamkäsk CommandButton1_Click () State = ComboBox1.Value ThisWorkbook.Worksheets ("sheet1"). Vahemik ("A1") = olek Unload Me End Sub 

Nii et jah, poisid, niimoodi kasutate VBA kasutajavormides kombineeritud kasti. Loodan, et olin selgitav ja asjalik. Kui teil on selle teema kohta küsimusi või muid VBA -ga seotud küsimusi, küsige minult allpool kommentaaride jaotises.

Excel VBA UserFormsiga alustamine| Selgitan, kuidas Excelis vormi luua, kuidas VBA tööriistakasti kasutada, kuidas kasutaja sisendeid käsitseda ja lõpuks, kuidas kasutaja sisendeid salvestada. Vaatame need teemad läbi ühe näite ja samm -sammult juhise abil.

VBA muutujad Excelis| VBA tähistab Visual Basic for Applications. See on Microsofti programmeerimiskeel. Seda kasutatakse koos Microsoft Office'i rakendustega, nagu MSExcel, MS-Word ja MS-Access, samas kui VBA muutujad on spetsiifilised märksõnad.

Exceli VBA muutuv ulatus| Kõigis programmeerimiskeeltes on meil muutuva juurdepääsu spetsifikatsioonid, mis määravad, kust saab määratud muutujale juurde pääseda. Excel VBA pole erand. Ka VBA -l on ulatuse täpsustajad.

ByRef ja ByVal argumendid | Kui argument edastatakse ByRef argumendina teisele alam- või funktsioonile, saadetakse tegeliku muutuja viide. Kõik muutuja koopiasse tehtud muudatused kajastuvad algses argumendis.

Kustutage lehed ilma kinnitusviipadeta, kasutades Microsoft Excelis VBA -d | Kuna kustutate lehti VBA abil, teate, mida teete. Sooviksite Excelil seda hoiatust mitte kuvada ja neetud leht kustutada.

Uue töövihiku lisamine ja salvestamine Microsoft Excel 2016 VBA abil| Selles koodis lõime esmalt viite töövihiku objektile. Ja siis vormistasime selle uue töövihikuobjektiga. Selle lähenemisviisi eeliseks on see, et saate selle uue töövihikuga hõlpsalt toiminguid teha. Nagu salvestamine, sulgemine, kustutamine jne

Kuva teade Exceli VBA olekuribal| Exceli olekuriba saab kasutada koodimonitorina. Kui teie VBA -kood on pikk ja teete VBA -ga mitmeid ülesandeid, keelate sageli ekraani värskendamise, nii et te ei näe seda ekraani vilkumist.

Lülitage hoiatussõnumid välja Microsoft Excel 2016 VBA abil| See kood mitte ainult ei luba VBA hoiatusi, vaid suurendab ka koodi ajakasutust. Vaatame, kuidas.

Populaarsed artiklid:

50 Exceli otseteed tootlikkuse suurendamiseks | Saa oma ülesandega kiiremini hakkama. Need 50 otseteed aitavad teil Excelis veelgi kiiremini töötada.

Funktsioon VLOOKUP Excelis | See on üks enim kasutatud ja populaarsemaid Exceli funktsioone, mida kasutatakse erinevate vahemike ja lehtede väärtuse otsimiseks.

COUNTIF Excelis 2016 | Loendage väärtused tingimustega, kasutades seda hämmastavat funktsiooni. Te ei pea oma andmeid teatud väärtuste loendamiseks filtreerima. Countif funktsioon on armatuurlaua ettevalmistamisel hädavajalik.

Funktsiooni SUMIF kasutamine Excelis | See on veel üks armatuurlaua oluline funktsioon. See aitab teil teatud tingimustel väärtusi kokku võtta.