Ako vytvoriť formulár na automatické zadávanie údajov v Excel VBA

Používanie formulárov vo VBA vám poskytuje prázdne plátno na navrhovanie a usporiadanie formulárov podľa vašich potrieb kedykoľvek. Naučme sa s Download.vn vytvárať formuláre na automatické zadávanie údajov v Excel VBA !

Ako vytvoriť formulár na automatické zadávanie údajov v Excel VBA

Vytvorte používateľský formulár pomocou Excel VBA

Otvorte nový excelový zošit a pred začatím vytvárania formulára na zadávanie údajov vykonajte niekoľko predbežných krokov.

Uložte zošit s požadovaným názvom, nezabudnite zmeniť typ súboru na Excel Macro-Enabled Workbook.

Pridajte do tohto zošita 2 hárky s nasledujúcimi názvami:

  1. Hárok 1 : Domov
  2. Hárok 2 : Databáza študentov

Ako vytvoriť formulár na automatické zadávanie údajov v Excel VBA

Ich mená si samozrejme môžete ľubovoľne meniť.

Na hárku Domov pridajte tlačidlo na ovládanie makra formulára používateľa. Prejdite na kartu Vývojár > kliknite na tlačidlo v rozbaľovacom zozname Vložiť . Umiestnite toto tlačidlo kdekoľvek v tabuľke.

Ako vytvoriť formulár na automatické zadávanie údajov v Excel VBA

Po umiestnení tlačidla ho premenujte. Kliknite naň pravým tlačidlom myši > kliknite na Nový , aby ste pripojili makro, ktoré zobrazí formulár.

Do okna editora zadajte nasledujúci kód:

Sub Button1_Click()
UserForm.Show
End Sub

S pripraveným hárkom Domov a databázou študentov je čas navrhnúť používateľský formulár. Prejdite na kartu Vývojár > kliknutím na položku Visual Basic otvorte Editor . Prípadne môžete stlačením ALT+F11 otvoriť okno editora.

Kliknite na kartu Vložiť a vyberte položku UserForm . Používateľský formulár je pripravený na použitie. S týmto formulárom sa otvorí sprievodný panel nástrojov, ktorý obsahuje všetky nástroje potrebné na návrh rozloženia.

Ako vytvoriť formulár na automatické zadávanie údajov v Excel VBA

Z tohto panela nástrojov vyberte Rám . Presuňte ho do používateľského formulára a zmeňte jeho veľkosť.

V (name) môžete zmeniť názov tohto rámca. Ak chcete zobraziť názov v klientskom rozhraní, môžete zmeniť názov v stĺpci Titulok .

Ďalej vyberte zo sady nástrojov Label a vložte 2 nálepky do tohto poľa. Premenujte prvé meno na Application Number a druhé meno na Student ID .

Použiť rovnaký proces premenovania cez Caption v Properties . Pred premenovaním sa uistite, že ste vybrali zodpovedajúci štítok.

Potom do poľa s nálepkami vložte 2 textové polia. Budú sa používať na zachytávanie vstupov používateľov. Zmeňte názvy 2 textových polí pomocou stĺpca (Názov) vo vlastnostiach takto:

  • Textbox1 : txtApplicationNo
  • Textové pole 2 : txtStudentID

Navrhovanie informačného rámca pre študentov

Vložte zvislý rám a pridajte 10 štítkov a 10 textových polí. Premenujte štítok takto:

  • Label3 : Názov
  • Štítok 4 : Vek
  • Štítok5 : Adresa
  • Label6 : Telefón
  • Štítok7 : Mesto
  • Štítok8 : Krajina
  • Štítok9 : Dátum narodenia
  • Label10 : PSČ
  • Štítok 11 : Štátna príslušnosť
  • Štítok 12 : Pohlavie

Vedľa týchto menoviek vložte zodpovedajúce textové pole vložením z dvoch polí s tlačidlami z panela nástrojov používateľského formulára vedľa menovky pohlavia. Zmeňte ich mená na Muž a Žena (s Vlastným).

Navrhnite podrobný rámec kurzu

Pridajte ďalší rám vertikálne a vložte 6 nálepiek, 6 textových polí zodpovedajúcich každému štítku. Premenujte nálepku takto:

  • Label13 : Názov kurzu
  • Label14 : ID kurzu
  • Label15 : Dátum začiatku registrácie
  • Label16 : Dátum ukončenia registrácie
  • Label17 : Trvanie kurzu
  • Štítok18 : Oddelenie

Navrhnite rám s podrobnosťami o platbe

Vložte nový rám, pridajte nový štítok a premenujte ho "Chcete aktualizovať Platobné údaje?" Vložte 2 tlačidlá možností ; premenujte ich na Áno a Nie .

Podobne pridajte nový rámik obsahujúci 2 ďalšie štítky a 2 kombinované polia. Premenujte štítok takto:

  • Label19 : Platba prijatá
  • Label20 : Spôsob platby

Dizajn navigačnej dosky

V poslednom rámci pridajte 3 tlačidlá zo sady nástrojov, ktoré obsahujú kód na nasadenie formulárov. Premenujte tlačidlá nasledovne:

  • Tlačidlo 1 : Uložiť podrobnosti
  • Tlačidlo 2 : Vymazať formulár
  • Tlačidlo 3 : Ukončiť

Ako vytvoriť formulár na automatické zadávanie údajov v Excel VBA

Napísať kód automatického formulára: Tlačidlo na uloženie informácií

Dvakrát kliknite na tlačidlo Uložiť podrobnosti . V ďalšom module vložte nasledujúci kód:

Private Sub CommandButton2_Click()

‘declare the variables used throughout the codes
Dim sht As Worksheet, sht1 As Worksheet, lastrow As Long

'Add validations to check if character values are being entered in numeric fields.
If VBA.IsNumeric(txtApplicationNo.Value) = False Then
MsgBox "Only numeric values are accepted in the Application Number", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtStudentID.Value) = False Then
MsgBox "Only numeric values are accepted in the Student ID", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtAge.Value) = False Then
MsgBox "Only numeric values are accepted in Age", vbCritical
Exit Sub
End If

If VBA.IsNumeric(txtPhone.Value) = False Then
MsgBox "Only numeric values are accepted in Phone Number", vbCritical
Exit Sub
End If

If VBA.IsNumeric(Me.txtCourseID.Value) = False Then
MsgBox "Only numeric values are accepted in Course ID", vbCritical
Exit Sub
End If

'link the text box fields with the underlying sheets to create a rolling database
Set sht = ThisWorkbook.Sheets("Student Database")

'calculate last populated row in both sheets

lastrow = sht.Range("a" & Rows.Count).End(xlUp).Row + 1

'paste the values of each textbox into their respective sheet cells

With sht
.Range("a" & lastrow).Value = txtApplicationNo.Value
.Range("b" & lastrow).Value = txtStudentID.Value
.Range("c" & lastrow).Value = txtName.Value
.Range("d" & lastrow).Value = txtAge.Value
.Range("e" & lastrow).Value = txtDOB.Value
.Range("g" & lastrow).Value = txtAddress.Value
.Range("h" & lastrow).Value = txtPhone.Value
.Range("i" & lastrow).Value = txtCity.Value
.Range("j" & lastrow).Value = txtCountry.Value
.Range("k" & lastrow).Value = txtZip.Value
.Range("l" & lastrow).Value = txtNationality.Value
.Range("m" & lastrow).Value = txtCourse.Value
.Range("n" & lastrow).Value = txtCourseID.Value
.Range("o" & lastrow).Value = txtenrollmentstart.Value
.Range("p" & lastrow).Value = txtenrollmentend.Value
.Range("q" & lastrow).Value = txtcourseduration.Value
.Range("r" & lastrow).Value = txtDept.Value

End With
sht.Activate

'determine gender as per user's input
If optMale.Value = True Then sht.Range("g" & lastrow).Value = "Male"
If optFemale.Value = True Then sht.Range("g" & lastrow).Value = "Female"
'Display a message box, in case the user selects the Yes radio button

If optYes.Value = True Then
MsgBox "Please select the payment details below"
Else:
Exit Sub

End If

End Sub

Vysvetlenie kódu v automatizovanej forme:

Textové polia obsahujú textové a číselné hodnoty, takže musíte obmedziť vstup používateľa. Číslo prihlášky, ID študenta, Vek, Telefón, ID kurzu a Trvanie kurzu budú obsahovať iba čísla, zvyšok bude obsahovať text.

Pomocou príkazu IF kód spustí vyskakovacie okno s chybou, ak používateľ zadá hodnotu znaku alebo textu do ľubovoľného číselného poľa.

Pretože existuje overenie chýb, musíte textové polia prepojiť s bunkami v hárku.

Premenné lastrow vypočítajú posledný vyplnený riadok a uložia hodnotu vo vnútri pre flexibilné použitie.

Nakoniec sa tieto hodnoty prilepia do textového poľa v prepojenom hárku programu Excel.

Kód formulára vymazať a ukončiť tlačidlo

V tlačidle vymazať musíte napísať kód, ktorý vymaže aktuálne hodnoty z formulára používateľa takto:

With Me
.txtApplicationNo.Value = ""
.txtStudentID.Value = ""
..txtName.Value = ""
.txtAge.Value = ""
.txtAddress.Value = ""
.txtPhone.Value = ""
.txtCity.Value = ""
.txtCountry.Value = ""
.txtDOB.Value = ""
.txtZip.Value = ""
.txtNationality.Value = ""
.txtCourse.Value = ""
.txtCourseID.Value = ""
.txtenrollmentstart.Value = ""
.txtenrollmentend.Value = ""
.txtcourseduration.Value = ""
.txtDept.Value = ""
.cmbPaymentMode.Value = ""
.cmbPayment.Value = ""
.optFemale.Value = False
.optMale.Value = False
.optYes.Value = False
.optNo.Value = False

End With

Do tlačidla ukončenia zadajte nasledujúci kód do formulára používateľa:

Private Sub CommandButton5_Click()
Unload Me
End Sub

V poslednom kroku musíte zadať niekoľko posledných kúskov kódu, aby ste vytvorili rozbaľovacie hodnoty pre pole so zoznamom (v rámčeku pokladne).

Private Sub UserForm_Activate()

With cmbPayment
.Clear
.AddItem ""
.AddItem "Yes"
.AddItem "No"
End With
With cmbPaymentMode

.Clear
.AddItem ""
.AddItem "Cash"
.AddItem "Card"
.AddItem "Check"
End With
End Sub

Vyššie je uvedené, ako vytvoriť formulár na automatické zadávanie údajov v programe Excel VBA . Dúfam, že článok je pre vás užitočný.


Ako nastaviť Office 2016 alebo 2019 alebo 365 ako predvolenú aplikáciu Microsoft Office?

Ako nastaviť Office 2016 alebo 2019 alebo 365 ako predvolenú aplikáciu Microsoft Office?

Office 365 sa nezobrazuje ako predvolená aplikácia pre dokumenty a tabuľky? Zistite, ako to definovať pre Word a Excel 2019 a 2016.

Ako pridať štítky údajov a popisy do grafov v Microsoft Excel 365?

Ako pridať štítky údajov a popisy do grafov v Microsoft Excel 365?

Zistite, ako jednoducho vložiť popisky údajov a štítky do grafov v Microsoft Excel 365.

XLOOKUP vs VLOOKUP: Ktorá funkcia Excelu je lepšia?

XLOOKUP vs VLOOKUP: Ktorá funkcia Excelu je lepšia?

XLOOKUP vs VLOOKUP: Ktorá funkcia Excelu je lepšia? Obe funkcie nájdu hodnoty v tabuľkách a poskytujú užitočné výsledky pri práci s Excelom.

Ako importovať údaje z Excelu do databázy Accessu?

Ako importovať údaje z Excelu do databázy Accessu?

Zistite, ako získať údaje programu Excel do novej alebo existujúcej tabuľky programu Access.

Ako získať a otvoriť súbor .xls Excel 97/2003 v Exceli 2016, 2019 a 365?

Ako získať a otvoriť súbor .xls Excel 97/2003 v Exceli 2016, 2019 a 365?

Zistite, ako môžete otvárať staré excelové súbory v Exceli 365 (2016/2019).

Rozdiel medzi Power BI a Excelom

Rozdiel medzi Power BI a Excelom

Rozdiely medzi Power BI a Excelom, Power BI a Excel majú veľa podobností vo funkčnosti a prezentácii údajov. Stále však existuje rozdiel medzi Power BI a Excelom

Ako rozdeliť bunky hárka na polovicu v Exceli 2016 / 2019?

Ako rozdeliť bunky hárka na polovicu v Exceli 2016 / 2019?

Zistite, ako môžete rozdeliť bunky hárka v Office 365 / 2019 / 2013

Ako odstrániť ochranu heslom zo zošitov programu Excel 365 / 2016 / 2019?

Ako odstrániť ochranu heslom zo zošitov programu Excel 365 / 2016 / 2019?

Zistite, ako odomknúť tabuľky Excel, ktoré sú chránené heslom.

Návod na použitie funkcie ABS na výpočet absolútnej hodnoty v Exceli

Návod na použitie funkcie ABS na výpočet absolútnej hodnoty v Exceli

Návod na použitie funkcie ABS na výpočet absolútnej hodnoty v Exceli Funkcia ABS sa používa na výpočet absolútnej hodnoty čísla alebo výpočtu. Používanie funkcie ABS je celkom jednoduché

Návod ako písať horný index a dolný index v Exceli

Návod ako písať horný index a dolný index v Exceli

Návod, ako písať horný index a dolný index v Exceli V Exceli musíte často upravovať matematické vzorce, ale máte problémy s výrazmi.