Ako používať ComboBox v užívateľskej forme VBA Excel?

Obsah:

Anonim

Kombinovaný box na užívateľskom formulári je ako rozbaľovacia ponuka, z ktorej je možné vybrať možnosť z dostupných možností. Je to ako rozbaľovací zoznam, ktorý vytvárame pomocou overovania údajov na pracovných listoch.

Vo väčšine digitálnych foriem ste museli vidieť aspoň jedno kombinované pole. Mohlo to byť pre výber štátu zo zoznamu štátov, kurzu zo zoznamu kurzov, krajiny zo zoznamu krajín atď. V tomto článku sa naučíme, ako pridať kombobox do užívateľskej formy VBA, ako inicializovať combobox s hodnotami a ako získať hodnotu z comboboxu.

Pridanie ComboBoxu do užívateľského formulára

Na pridanie komboboxu do používateľského formulára musíte mať najskôr užívateľský formulár. Dah !.

Otvorte teda VBE pomocou CTRL+F11. Kliknite pravým tlačidlom myši na zošit, prejdite na vloženie a kliknite na položku Userform. Máte pridaný užívateľský formulár. Tu si môžete prečítať viac o užívateľských formulároch vo VBA.

Teraz z panela s nástrojmi zvoľte combobox. Je to štvrtá možnosť v hornom rade. Ak nevidíte panel s nástrojmi. V ponuke prejdite na položku Zobraziť a kliknite na položku Panel s nástrojmi. Zobrazí sa panel nástrojov.

Pridal som štítok štátov, pretože tento kombobox bude obsahovať zoznam niektorých štátov a tlačidlo na odoslanie na odoslanie formulára.

Ako inicializovať kombobox v užívateľskej forme?

Toto je časť, kde väčšina ľudí robí chyby. Študenti niekedy napíšu kód na načítanie hodnôt do komboboxu a potom odošlú tlačidlá. A keď načítajú užívateľský formulár, kombobox nezobrazuje žiadne hodnoty.

Na načítanie komboboxu by ste mali napísať kód pred načítaním užívateľského formulára. Môžete to urobiť v module, c alebo tlačidle, kde načítate formulár. Kód na načítanie zoznamu combobox by mal byť pred príkazom formname.show.

Načítavanie Comboboxu do podprogramu volania UserForm

Povedzme, že chcem natvrdo kódovať nejaké pole v štátnom komboboxe. Napíšem teda podprogram, ktorý načíta užívateľský formulár na vyplnenie informácií. Pozrite sa na nižšie uvedený kód.

Stavy subload_userform () = Array ("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = stavy UserForm1.Show End Sub 

Definujem pole „štátov“, ktoré obsahuje niekoľko názvov indických štátov. Teraz používam meno užívateľa na prístup k comboboxu, pretože combobox je súčasťou userform.

Moje užívateľské meno je userform1. A názov comboboxu je combobox1. Toto sú predvolené názvy. Môžete ich zmeniť v okne vlastností.

Ďalej inicializujem vlastnosť zoznamu combobox so stavmi.

A potom ukážem userform1 pomocou príkazu show.

Keď spustíte vyššie uvedený kód, v komboboxe budú uvedené všetky stavy.

Inicializácia Comboboxu pomocou udalosti UserForm_Initialize ().

Ďalším spôsobom načítania komponentov comboboxu do užívateľskej formy je použitie inicializácie udalosti užívateľskej formy. Táto udalosť prebieha pred načítaním používateľského formulára. Všetko, čo chcete urobiť pred načítaním používateľského formulára, môžete urobiť tu. Jednou z týchto vecí je načítanie prvkov komboboxu.

Dvakrát kliknite na užívateľský formulár, aby sa otvorila oblasť kódovania v objekte userform. Teraz z rozbaľovacej ponuky vľavo vyberte formu používateľa. Potom v pravej rozbaľovacej ponuke vyberte položku inicializovať.

Vloží sa prázdny pod názov UserForm_Initialize (). Všetko, čo je napísané v tomto pododdiele, bude vykonané skôr, ako sa zobrazí užívateľský formulár.

Tu teda napíšeme inicializačný kód pre combobox.

Štáty súkromného podžiadateľa User_Form_Initialize () = pole („Dillí“, „HORE“, „Spojené kráľovstvo“, „Gujrat“, „Kašmír“) UserForm1.ComboBox1.List = stavy Koniec podradenia 

Všimnite si toho, že tu nemáme príkaz userform1.show. Stále je v tom module. Táto čiastka bude použitá na zobrazenie našej užívateľskej formy na obrazovke.

Subload_userform () UserForm1. Zobraziť koniec pod 

Používatelia teda budú spúšťať podskupinu load_userform pomocou nejakého prvku priradeného príkazom, tlačidlom alebo makrom. Keď kompilátor spustí príkaz code userform1.show, okamžite spustí udalosť useforma_initialize (). Potom ukáže užívateľskú formu.

Poznámky:

Ak napíšete kód na inicializáciu comboboxu s hodnotami v príkazovom tlačidle1, kombobox nič nezobrazí.

Ak chcete inicializovať combobox s hodnotami, načítajte ho v každom prípade, ku ktorému dôjde skôr, ako sa užívateľ dostane k comboboxu, aby ho vyplnil.

Načítava sa hodnota z ComboBoxu

Na získanie niektorých informácií teda používame formuláre. A aby sme tieto informácie mohli použiť, musíme ich získať. Na získanie akejkoľvek hodnoty z užívateľského formulára combobox používame vlastnosť combobox.value. Vo všeobecnosti získavame hodnoty z prvkov formulára, keď používateľ vyplní formulár a odošle formulár pomocou tlačidla Odoslať. Môžeme teda použiť udalosť commandbutton_click. Ak teda ešte nemáte príkaz, zadajte príkazové tlačidlo a napíšte naň príkaz Odoslať. Teraz naň dvakrát kliknite a dostanete sa do udalosti commandButton_click.

Teraz vytvorte premennú na uloženie hodnoty. Ak chcete, uložte ho na list. Nakoniec opustite formulár pomocou príkazu Unload Me. Ako je uvedené v nižšie uvedenom kóde.

Private Sub CommandButton1_Click () State = ComboBox1.Value ThisWorkbook.Worksheets ("sheet1"). Range ("A1") = State Unload Me End Sub 

Takže áno, chlapci, takto používate kombobox v používateľských formulároch VBA. Dúfam, že som to vysvetlil a k veci. Ak máte akékoľvek otázky týkajúce sa tejto témy alebo akékoľvek ďalšie otázky súvisiace s VBA, opýtajte sa ma v sekcii komentárov nižšie.

Začíname s UserForms programu Excel VBA| Vysvetlím, ako vytvoriť formulár v programe Excel, ako používať panel nástrojov VBA, ako zaobchádzať s užívateľskými vstupmi a nakoniec, ako ich uložiť. Tieto témy si prejdeme na jednom príklade a sprievodcovi krok za krokom.

Premenné VBA v Exceli| VBA je skratka pre Visual Basic for Applications. Je to programovací jazyk od spoločnosti Microsoft. Používa sa s aplikáciami balíka Microsoft Office, ako sú MSExcel, MS-Word a MS-Access, zatiaľ čo premenné VBA sú špecifické kľúčové slová.

Variabilný rozsah Excel VBA| Vo všetkých programovacích jazykoch máme špecifikátory prístupu k premenným, ktoré definujú, odkiaľ je k definovanej premennej prístup. Excel VBA nie je výnimkou. VBA má tiež špecifikátory rozsahu.

Argumenty ByRef a ByVal | Keď je argument odoslaný ako argument ByRef do iného podradeného prvku alebo funkcie, odošle sa odkaz na skutočnú premennú. Všetky zmeny vykonané v kópii premennej sa prejavia v pôvodnom argumente.

Odstráňte hárky bez výziev na potvrdenie pomocou VBA v programe Microsoft Excel | Keďže odstraňujete hárky pomocou jazyka VBA, viete, čo robíte. Chcete Excelu povedať, aby toto upozornenie nezobrazoval a vymazal ten prekliaty hárok.

Pridajte a uložte nový zošit pomocou jazyka VBA v programe Microsoft Excel 2016| V tomto kóde sme najskôr vytvorili odkaz na objekt zošita. A potom sme to inicializovali novým objektom zošita. Výhodou tohto prístupu je, že môžete ľahko vykonávať operácie s týmto novým zošitom. Rovnako ako ukladanie, zatváranie, mazanie atď

Zobrazte správu na stavovom riadku programu Excel VBA| Stavový riadok v Exceli je možné použiť ako monitor kódu. Keď je váš kód VBA dlhý a vykonávate niekoľko úloh pomocou jazyka VBA, často vypnete aktualizáciu obrazovky, aby ste videli, že obrazovka bliká.

Vypnite varovné správy pomocou VBA v programe Microsoft Excel 2016| Tento kód nielenže deaktivuje upozornenia VBA, ale tiež zvyšuje časovú účinnosť kódu. Pozrime sa ako.

Populárne články:

50 skratiek programu Excel na zvýšenie produktivity | Vykonajte svoju úlohu rýchlejšie. Týchto 50 skratiek vám umožní pracovať ešte rýchlejšie v Exceli.

Funkcia VLOOKUP v programe Excel | Toto je jedna z najpoužívanejších a najobľúbenejších funkcií programu Excel, ktorá sa používa na vyhľadávanie hodnôt z rôznych rozsahov a hárkov.

COUNTIF v Exceli 2016 | Počítajte hodnoty s podmienkami pomocou tejto úžasnej funkcie. Na počítanie konkrétnych hodnôt nie je potrebné filtrovať údaje. Funkcia Countif je potrebná na prípravu palubnej dosky.

Ako používať funkciu SUMIF v programe Excel | Toto je ďalšia zásadná funkcia palubnej dosky. To vám pomôže zhrnúť hodnoty za konkrétnych podmienok.