Excel VBA Userform - Ako vytvoriť interaktívny formulár používateľa?

Excel VBA Userform

Userform in VBA are customized user-defined forms which are made to take input from a user in the form of a form, it has different sets of controls to add such as text boxs, checkboxes labels, etc to guide a user to input a value a uloží hodnotu do tabuľky, každá časť používateľského formulára má so sebou jedinečný kód.

Userform je objekt v rozhraní programu Excel a vo vnútri tohto formulára používateľa môžeme vytvoriť ďalšie užitočné vlastné dialógové okná, pomocou ktorých získame údaje od používateľa. Keď pracujete so súborom makier, ktorý vytvoril váš nadriadený alebo si ho môžete stiahnuť z internetu, musíte vidieť takýto používateľský formulár.

V tomto článku vám ukážeme, ako vytvoriť podobný formulár používateľa na ukladanie údajov od používateľa.

Ako vytvoriť Userform?

Podobne ako vložíte nový modul podobne, musíte vložiť Userform kliknutím na tlačidlo VLOŽIŤ v editore jazyka Visual Basic.

Len čo na to kliknete, vloží sa aj užívateľský formulár.

Skôr ako vám poviem, ako to naprogramovať, dovoľte mi ukázať vám, ako formátovať tento formulár používateľa.

Formátovanie užívateľského formulára

Po výbere užívateľského formulára stlačte kláves F4, zobrazí sa vám okno vlastností.

Pomocou tohto okna vlastností môžeme naformátovať tento formulár používateľa. Môžeme to pomenovať. Môžeme zmeniť farbu, štýl orámovania atď …

Takto vyskúšajte ďalšie vlastnosti, aby ste získali prehľad o formulári používateľa.

Teraz pre tento formulár používateľa vložte Panel nástrojov.

Teraz uvidíme panel nástrojov, ako je tento.

V tejto chvíli je užívateľský formulár iba vložený, nie je naprogramovaný. Ak chcete vedieť, ako to funguje, stačí kliknúť na tlačidlo spustenia. Formulár uvidíme na pracovnom hárku programu Excel.

Teraz sa používa štítok DrawBox ToolBox.

Do štítka zadajte text ako meno zamestnanca.

Pre tento štítok teda môžeme formátovať pomocou vlastností. Teraz sme zadali text ako „Meno zamestnanca:“ Teraz to môžeme vidieť v okne vlastností v časti Titulky.

Vložte ešte jeden štítok. Ak chcete vložiť ďalší štítok, kliknite buď na panel nástrojov, alebo môžete súčasný štítok pretiahnuť podržaním klávesu Ctrl . Budete mať repliku aktuálneho štítku.

Teraz budeme mať rovnaké označenie.

Zmeňte názov na ID zamestnanca.

Teraz podobne vložte ešte jeden štítok a pomenujte ho ako „Oddelenie“.

Teraz z panela nástrojov vložte textové pole.

V okne vlastností pomenujte toto textové pole ako EmpName .

Takto vložte ďalšie dve textové polia z poľa ID zamestnanca a oddelenia. Pomenujte tieto textové polia podľa ich nadpisu.

Podobne to urobte pre oddelenie.

Teraz z panela nástrojov vložte príkazové tlačidlo.

Zmeňte názov príkazového tlačidla na „SubmitButton“ a zmeniť nadpis na „Submit“.

Vložte ešte jedno tlačidlo a nazvite ho „Zrušiť“.

Teraz iba uvidíte spustenie, stlačte tlačidlo spustenia alebo použite kláves F5 a pozrite sa, ako vyzerá váš formulár používateľa v programe Excel.

Teraz sa to dostáva do formy.

Kód VBA

Teraz do tohto používateľ zadá údaje, takže je potrebné ich naprogramovať tak, aby ukladali údaje zadané používateľom do tohto formulára.

Dvojitým kliknutím na tlačidlo ODOSLAŤ sa dostanete do okna makra s automaticky vytvoreným makrom, ako je uvedené nižšie.

Hovorí, že kliknete na tlačidlo SubmitButton, pamätajte, že sme pomenovali tlačidlo ODOSLAŤ ako SubmitButton.

Takže, kedykoľvek chceme toto tlačidlo zavolať, môžeme ho nazvať týmto menom (tlačidlo odoslať). Do tohto makra skopírujte a prilepte nižšie uvedený kód.

Kód:

Private Sub SubmitButton_Click () Dim LR As Long LR = Cells (Rows.Count, 1) .End (xlUp) .Row + 1 Cells (LR, 1) .Value = EmpName.Value Cells (LR, 2) .Value = EmpID .Value Cells (LR, 3) .Value = Dept.Value EmpName.Value = "" EmpID.Value = "" Dept.Value = "" End Sub
  • EmpName.Hodnota tu EmpName je názov textového poľa, ktorý sme zadali pri vytváraní textového poľa mena zamestnanca.
  • EmpID.Hodnota tu EmpID je názov textového poľa textového poľa ID zamestnanca.
  • Dept.Hodnota, toto je názov textového poľa oddelenia.

Kliknutím na tlačidlo odoslať teda uložíte hodnoty do uvedených buniek.

Teraz dvakrát kliknite na tlačidlo Zrušiť. Takto sa vám zobrazí aj názov automatického makra.

Skopírujte nasledujúci kód a prilepte ho.

Kód:

Súkromný sub CancelButton_Click () MyUserForm.Hide End Sub

MyUserForm je meno, ktoré sme dali užívateľskému formuláru. MyUserForm.Hide znamená, že po kliknutí na tlačidlo ZRUŠIŤ skryjete formulár používateľa.

Dobre, teraz vytvorte v hárku takúto šablónu.

Odstráňte všetky ostatné hárky v zošite okrem tohto hárku šablón.

Teraz choďte do editora jazyka Visual Basic.

A makro spustíme pomocou klávesu F5 alebo ručne, uvidíme pred sebou užívateľský formulár.

Zadajte meno zamestnanca, ID zamestnanca a názov oddelenia.

Teraz, ak kliknete na tlačidlo ODOSLAŤ, uloží sa hodnoty do šablóny, ktorú sme vytvorili.

Takto môžete naďalej zadávať mená. Formulár používateľa bude naďalej ukladať hodnoty zadané používateľom do určených buniek.

Takže pomocou FORMÁTU UŽÍVATEĽA môžeme skutočne vytvárať nádherné projekty, pomocou ktorých získame informácie od používateľa.

Zaujímavé články...