Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Použití formulářů ve VBA vám poskytuje prázdné plátno pro návrh a uspořádání formulářů tak, aby kdykoli vyhovovaly vašim potřebám. Pojďme se s Download.vn naučit , jak vytvářet formuláře pro automatické zadávání dat v Excel VBA !

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Vytvořte uživatelský formulář pomocí Excel VBA

Otevřete nový sešit aplikace Excel a proveďte několik předběžných kroků, než začnete vytvářet formulář pro zadávání dat.

Uložte sešit s požadovaným názvem, nezapomeňte změnit typ souboru na Excel Macro-Enabled Workbook.

Přidejte do tohoto sešitu 2 listy s následujícími názvy:

  1. List1 : Domů
  2. List2 : Databáze studentů

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Jejich jména si samozřejmě můžete libovolně změnit.

Na listu Domů přidejte ovládací tlačítko makra uživatelského formuláře. Přejděte na kartu Vývojář > v rozevíracím seznamu Vložit klikněte na tlačítko . Umístěte toto tlačítko kamkoli do tabulky.

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Po umístění tlačítka jej přejmenujte. Klikněte na něj pravým tlačítkem > kliknutím na Nový připojte makro, které zobrazí formulář.

Do okna editoru zadejte následující kód:

Sub Button1_Click()
UserForm.Show
End Sub

S připraveným listem Domů a databází studentů je čas navrhnout uživatelský formulář. Přejděte na kartu Vývojář > kliknutím na Visual Basic otevřete Editor . Případně můžete stisknutím ALT+F11 otevřít okno editoru.

Klepněte na kartu Vložit a vyberte UserForm . Uživatelský formulář je připraven k použití. S tímto formulářem se otevře doprovodná sada nástrojů, která obsahuje všechny nástroje potřebné k návrhu rozvržení.

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Z tohoto panelu nástrojů vyberte Rámeček . Přetáhněte jej do uživatelského formuláře a změňte jeho velikost.

V (name) můžete změnit název tohoto rámce. Chcete-li zobrazit název na front-endu, můžete změnit název ve sloupci Titulek .

Dále vyberte z panelu nástrojů Label a vložte 2 nálepky do tohoto pole. Přejmenujte křestní jméno na Application Number a druhé jméno na Student ID .

Použijte stejný proces přejmenování pomocí Caption ve vlastnostech . Před přejmenováním se ujistěte, že jste vybrali odpovídající štítek.

Dále vložte 2 textová pole do pole nálepek. Budou použity k zachycení uživatelských vstupů. Změňte názvy 2 textových polí pomocí sloupce (Název) ve vlastnostech následovně:

  • Textbox1 : txtApplicationNo
  • Textbox2 : txtStudentID

Návrh informačního rámce pro studenty

Vložte svislý rámeček a přidejte 10 štítků a 10 textových polí. Přejmenujte štítek následovně:

  • Label3 : Jméno
  • Štítek 4 : Věk
  • Label5 : Adresa
  • Label6 : Telefon
  • Štítek7 : Město
  • Label8 : Země
  • Štítek9 : Datum narození
  • Label10 : PSČ
  • Štítek11 : Národnost
  • Štítek12 : Pohlaví

Vložte odpovídající textové pole vedle těchto štítků vložením ze dvou polí s tlačítky voleb z panelu nástrojů uživatelského formuláře vedle štítku pohlaví. Změňte jejich jména na Muž a Žena (pomocí Vlastní).

Navrhněte podrobný rámec kurzu

Přidejte další rámeček svisle a vložte 6 nálepek, 6 textových polí odpovídajících každému štítku. Přejmenujte nálepku takto:

  • Label13 : Název kurzu
  • Label14 : ID kurzu
  • Label15 : Datum zahájení registrace
  • Label16 : Datum ukončení registrace
  • Label17 : Délka kurzu
  • Label18 : Oddělení

Návrh rámečku s podrobnostmi o platbě

Vložte nový rámeček, přidejte nový štítek a přejmenujte jej "Přejete si aktualizovat platební údaje?" Vložte 2 tlačítka voleb ; přejmenujte je na Ano a Ne .

Podobně přidejte nový rámeček obsahující 2 další štítky a 2 pole se seznamem. Přejmenujte štítek následovně:

  • Label19 : Platba přijata
  • Label20 : Způsob platby

Design navigační desky

V posledním rámci přidejte 3 tlačítka ze sady nástrojů obsahující kód pro nasazení formulářů. Přejmenujte tlačítka následovně:

  • Tlačítko1 : Uložit podrobnosti
  • Tlačítko2 : Vymazat formulář
  • Tlačítko 3 : Konec

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Zápis automatického kódu formuláře: Tlačítko pro uložení informací

Dvakrát klikněte na tlačítko Uložit podrobnosti . V dalším modulu vložte následující 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

Vysvětlení kódu v automatizované podobě:

Textová pole obsahují textové a číselné hodnoty, takže musíte omezit vstup uživatele. Číslo přihlášky, ID studenta, Věk, Telefon, ID kurzu a Délka kurzu budou obsahovat pouze čísla, zbytek bude obsahovat text.

Pomocí příkazu IF kód spustí vyskakovací okno s chybou, pokud uživatel zadá hodnotu znaku nebo textu do libovolného číselného pole.

Protože existuje ověření chyb, je třeba propojit textová pole s buňkami v listu.

Proměnné lastrow vypočítávají poslední vyplněný řádek a ukládají hodnotu dovnitř pro flexibilní použití.

Nakonec se tyto hodnoty vloží do textového pole v propojeném listu aplikace Excel.

Kód formuláře vymazat a ukončit tlačítko

V tlačítku vymazat musíte napsat kód, který vymaže aktuální hodnoty z formuláře uživatele následovně:

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

V tlačítku pro ukončení zadejte do uživatelského formuláře následující kód:

Private Sub CommandButton5_Click()
Unload Me
End Sub

V posledním kroku musíte zadat několik posledních kusů kódu, abyste vytvořili rozbalovací hodnoty pro pole se seznamem (v rámečku pokladny).

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

Výše je uveden postup, jak vytvořit formulář pro automatické zadávání dat v aplikaci Excel VBA . Doufám, že článek je pro vás užitečný.


Pokyny pro použití funkce ABS pro výpočet absolutní hodnoty v Excelu

Pokyny pro použití funkce ABS pro výpočet absolutní hodnoty v Excelu

Návod k použití funkce ABS k výpočtu absolutní hodnoty v Excelu Funkce ABS slouží k výpočtu absolutní hodnoty čísla nebo výpočtu. Použití funkce ABS je celkem jednoduché

Návod, jak psát horní index a dolní index v Excelu

Návod, jak psát horní index a dolní index v Excelu

Návod k zápisu horního a dolního indexu v Excelu Často musíte v Excelu upravovat matematické vzorce, ale máte potíže s výrazy.

Jak číslovat stránky, aniž byste začínali od 1 v Excelu

Jak číslovat stránky, aniž byste začínali od 1 v Excelu

Jak číslovat stránky bez začátku od 1 v Excelu Číslování stránek v Excelu je docela jednoduché, ale číslování stránek od jiného čísla než 1 je obtížné.

Návod na tisk opakovaných titulků v Excelu

Návod na tisk opakovaných titulků v Excelu

Pokyny pro opakovaný tisk nadpisů v Excelu U tabulek Excelu s mnoha vytištěnými stránkami lidé často nastavují opakovaný tisk nadpisů, aby nedošlo k záměně s tabulkou.

Jak používat funkce počítání Count, Counta, Countif, Countifs v Excelu

Jak používat funkce počítání Count, Counta, Countif, Countifs v Excelu

Jak používat funkce počítání Count, Counta, Countif, Countifs v Excelu Počítací funkce v Excelu jsou rozděleny do mnoha typů, většina těchto funkcí je pro počítání velmi snadno použitelná.

Jak používat funkci Geografie v aplikaci Microsoft Excel

Jak používat funkci Geografie v aplikaci Microsoft Excel

Jak používat funkci Geografie v aplikaci Microsoft Excel, Pomocí Geografie můžete přistupovat k geografickým datům do tabulky aplikace Excel. Níže je uvedeno, jak používat funkci Geografie

Jak vypočítat procenta v Excelu

Jak vypočítat procenta v Excelu

Jak vypočítat procenta v aplikaci Excel, Microsoft Excel vám poskytuje mnoho různých způsobů výpočtu procent. Pojďme se s WebTech360 naučit, jak vypočítat procenta v Excelu

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Jak vytvořit formulář pro automatické zadávání dat v Excelu VBA

Jak vytvořit formulář pro automatické zadávání dat v aplikaci Excel VBA, pomocí formulářů ve VBA získáte prázdné plátno pro návrh a uspořádání formulářů tak, aby vyhovovaly jakýmkoli potřebám

Jak vytvořit vodopádový graf v Excelu

Jak vytvořit vodopádový graf v Excelu

Jak vytvořit vodopádový graf v Excelu, vodopádové grafy se používají k ilustraci kolísání mezisoučtů v Excelu. Pojďme se naučit, jak vytvářet grafy pomocí WebTech360

Pokyny pro skrytí řádků a sloupců v aplikaci Excel

Pokyny pro skrytí řádků a sloupců v aplikaci Excel

Pokyny pro skrytí řádků a sloupců v aplikaci Excel Někdy je váš soubor aplikace Excel příliš dlouhý a chcete skrýt nepoužívané části nebo jej z nějakého důvodu nechcete zobrazovat ostatním.