Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Brug af formularer i VBA giver dig et tomt lærred til at designe og arrangere formularer, så de passer til dine behov til enhver tid. Lad os lære med Download.vn , hvordan du opretter automatiske dataindtastningsformularer i Excel VBA !

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Opret en brugerformular ved hjælp af Excel VBA

Åbn en ny Excel-projektmappe, og udfør et par indledende trin, før du begynder at oprette dataindtastningsformularen.

Gem projektmappen med det ønskede navn, glem ikke at ændre filtypen til Excel Macro-Enabled Workbook.

Tilføj 2 ark til denne projektmappe med følgende navne:

  1. Ark 1 : Hjem
  2. Ark2 : Elevdatabase

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Du kan selvfølgelig ændre deres navne, som du ønsker.

Tilføj en makrokontrolknap til brugerformularen i arket Hjem . Gå til fanen Udvikler > klik på knappen på rullelisten Indsæt . Placer denne knap hvor som helst på regnearket.

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Efter at have placeret knappen, omdøb den. Højreklik på den > klik på Ny for at vedhæfte en makro, der viser formularen.

Indtast følgende kode i redigeringsvinduet:

Sub Button1_Click()
UserForm.Show
End Sub

Med hjemmearket og elevdatabasen klar, er det tid til at designe brugerformularen. Naviger til fanen Udvikler > klik på Visual Basic for at åbne editoren . Alternativt kan du trykke ALT+F11 for at åbne redigeringsvinduet.

Klik på fanen Indsæt og vælg UserForm . En brugerformular er klar til at blive brugt. En medfølgende værktøjskasse åbner med denne formular, der indeholder alle de værktøjer, der er nødvendige for at designe layoutet.

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Fra denne værktøjskasse skal du vælge Ramme . Træk den til brugerformularen og tilpas dens størrelse.

I (navn) kan du ændre navnet på denne ramme. For at få vist navnet på frontenden kan du ændre navnet i kolonnen Billedtekst .

Vælg derefter Etiket fra værktøjskassen og indsæt 2 klistermærker i denne boks. Omdøb fornavnet til Application Number og det andet navn til Student ID .

Anvend den samme omdøbningsproces via billedtekst i egenskaber . Sørg for at vælge den tilsvarende etiket, før du omdøber den.

Indsæt derefter 2 tekstbokse i klistermærkeboksen. De vil blive brugt til at fange brugerinput. Skift navnene på de 2 tekstbokse via kolonnen (Navn) i Egenskaber som følger:

  • Tekstboks1 : txtApplicationNo
  • Tekstboks2 : txtStudentID

Design af en elevinformationsramme

Indsæt en lodret ramme, og tilføj 10 etiketter og 10 tekstbokse. Omdøb etiketten som følger:

  • Etiket 3 : Navn
  • Etiket 4 : Alder
  • Label 5 : Adresse
  • Label 6 : Telefon
  • Label 7 : By
  • Etiket8 : Land
  • Etiket9 : Fødselsdato
  • Label10 : Postnummer
  • Label11 : Nationalitet
  • Label12 : Køn

Indsæt den tilsvarende tekstboks ved siden af ​​disse etiketter, indsæt fra to valgknapper fra brugerformularens værktøjskassen ved siden af ​​kønsetiketten. Skift deres navne til henholdsvis Mand og Kvinde (med brugerdefineret).

Design detaljeret kursusramme

Tilføj endnu en ramme lodret og indsæt 6 klistermærker, 6 tekstbokse svarende til hver etiket. Omdøb mærkaten som følger:

  • Label13 : Kursusnavn
  • Label14 : Kursus-id
  • Label15 : Startdato for tilmelding
  • Label16 : Slutdato for tilmelding
  • Label17 : Kursusvarighed
  • Label18 : Afdeling

Design betalingsdetaljeramme

Indsæt en ny ramme, tilføj en ny etiket og omdøb den "Ønsker du at opdatere betalingsoplysningerne?" Indsæt 2 valgknapper ; omdøb dem til Ja og Nej .

Tilføj på samme måde en ny ramme, der indeholder 2 ekstra etiketter og 2 kombinationsbokse. Omdøb etiketten som følger:

  • Label19 : Betaling modtaget
  • Label20 : Betalingsmåde

Design af navigationstavle

I den sidste ramme tilføjer du 3 knapper fra værktøjskassen, der indeholder kode til at implementere formularerne. Omdøb knapperne som følger:

  • Knap1 : Gem detaljer
  • Knap 2 : Ryd formular
  • Knap 3 : Afslut

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Skriv automatisk formularkode: Knap til at gemme information

Dobbeltklik på knappen Gem detaljer . I det næste modul skal du indsætte følgende kode:

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

Forklaring af koden i den automatiserede form:

Tekstbokse indeholder tekst og numeriske værdier, så du skal begrænse brugerinput. Ansøgningsnummer, studie-id, alder, telefon, kursus-id og kursusvarighed vil kun indeholde tal, resten vil indeholde tekst.

Ved at bruge IF- kommandoen udløser koden en fejl-popup, hvis brugeren indtaster et tegn eller en tekstværdi i et numerisk felt.

Fordi der er fejlvalidering, skal du linke tekstfelterne til cellerne i regnearket.

Lastrow- variablerne beregner den sidst udfyldte række og gemmer værdien indeni til fleksibel brug.

Til sidst indsættes disse værdier i tekstboksen i det linkede Excel-ark.

Kod formularen ryd og afslut-knap

I sletknappen skal du skrive kode, der sletter de aktuelle værdier fra brugerens formular som følger:

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

I exit- knappen skal du indtaste følgende kode i brugerens formular:

Private Sub CommandButton5_Click()
Unload Me
End Sub

I det sidste trin skal du indtaste de sidste par stykker kode for at oprette dropdown-værdierne for kombinationsboksen (i kasserammen).

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

Ovenstående er, hvordan du opretter en automatisk dataindtastningsformular i Excel VBA . Håber artiklen er nyttig for dig.


Instruktioner til brug af ABS-funktionen til at beregne absolut værdi i Excel

Instruktioner til brug af ABS-funktionen til at beregne absolut værdi i Excel

Vejledning til brug af ABS-funktionen til at beregne absolut værdi i Excel ABS-funktionen bruges til at beregne den absolutte værdi af et tal eller en beregning. Det er ganske enkelt at bruge ABS-funktionen

Instruktioner til, hvordan man skriver øvre og nedre indeks i Excel

Instruktioner til, hvordan man skriver øvre og nedre indeks i Excel

Vejledning i hvordan man skriver øvre og nedre indeks i Excel Du skal ofte redigere matematiske formler i Excel, men har svært ved udtryk.

Sådan nummereres sider uden at starte fra 1 i Excel

Sådan nummereres sider uden at starte fra 1 i Excel

Sådan nummererer du sider uden at starte fra 1 i Excel At nummerere sider i Excel er ret simpelt, men at nummerere sider, der starter fra et andet tal end 1, er svært.

Instruktioner til udskrivning af gentagne titler i Excel

Instruktioner til udskrivning af gentagne titler i Excel

Instruktioner til gentagen udskrivning af titler i Excel For Excel-tabeller med mange udskrevne sider opsætter folk ofte gentagen udskrivning af titler for at undgå forveksling med regnearket.

Sådan bruger du Count, Counta, Countif, Countifs tællefunktioner i Excel

Sådan bruger du Count, Counta, Countif, Countifs tællefunktioner i Excel

Sådan bruger du Count, Counta, Countif, Countifs tællefunktioner i Excel Tællefunktioner i Excel er opdelt i mange typer, de fleste af disse funktioner er meget nemme at bruge til at tælle.

Sådan bruger du Geografi-funktionen i Microsoft Excel

Sådan bruger du Geografi-funktionen i Microsoft Excel

Sådan bruger du Geografi-funktionen i Microsoft Excel. Ved hjælp af Geografi kan du få adgang til geografiske data i et Excel-regneark. Nedenfor kan du se, hvordan du bruger Geografi-funktionen

Hvordan man beregner procent i Excel

Hvordan man beregner procent i Excel

Hvordan man beregner procenter i Excel, Microsoft Excel giver dig mange forskellige måder at beregne procenter på. Lad os lære med WebTech360, hvordan man beregner procenter i Excel

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA

Sådan opretter du en automatisk dataindtastningsformular i Excel VBA, Brug af formularer i VBA giver dig et tomt lærred til at designe og arrangere formularer, så de passer til ethvert behov

Sådan opretter du et vandfaldsdiagram i Excel

Sådan opretter du et vandfaldsdiagram i Excel

Sådan opretter du et vandfaldsdiagram i Excel, Vandfaldsdiagrammer bruges til at illustrere udsvinget i subtotaler i Excel. Lad os lære, hvordan du opretter diagrammer med WebTech360

Instruktioner til at skjule rækker og kolonner i Excel

Instruktioner til at skjule rækker og kolonner i Excel

Instruktioner til at skjule rækker og kolonner i Excel Nogle gange er din Excel-fil for lang, og du vil skjule ubrugte dele eller af en eller anden grund ikke vil vise den til andre.