Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Å bruke skjemaer i VBA gir deg et tomt lerret for å designe og ordne skjemaer for å passe dine behov når som helst. La oss lære med Download.vn hvordan du lager automatiske dataregistreringsskjemaer i Excel VBA !

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Lag et brukerskjema ved hjelp av Excel VBA

Åpne en ny Excel-arbeidsbok og utfør noen få innledende trinn før du begynner å lage dataregistreringsskjemaet.

Lagre arbeidsboken med ønsket navn, ikke glem å endre filtypen til Excel Macro-Enabled Workbook.

Legg til 2 ark i denne arbeidsboken med følgende navn:

  1. Ark 1 : Hjem
  2. Ark2 : Studentdatabase

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Selvfølgelig kan du endre navnene deres som du ønsker.

I Hjem- arket legger du til en makrokontrollknapp for brukerskjema. Gå til Utvikler- fanen > klikk Knapp fra Sett inn-rullegardinlisten . Plasser denne knappen hvor som helst på regnearket.

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Etter å ha plassert knappen, gi den nytt navn. Høyreklikk på den > klikk Ny for å legge ved en makro som viser skjemaet.

Skriv inn følgende kode i redigeringsvinduet:

Sub Button1_Click()
UserForm.Show
End Sub

Med hjemmearket og studentdatabasen klar, er det på tide å designe brukerskjemaet. Naviger til kategorien Utvikler > klikk på Visual Basic for å åpne redigeringsprogrammet . Alternativt kan du trykke ALT+F11 for å åpne redigeringsvinduet.

Klikk på Sett inn- fanen og velg UserForm . Et brukerskjema er klart til bruk. En tilhørende verktøykasse åpnes med dette skjemaet, som inneholder alle verktøyene som trengs for å designe layouten.

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Fra denne verktøykassen velger du Ramme . Dra den til brukerskjemaet og endre størrelsen på den.

I (navn) kan du endre navnet på denne rammen. For å vise navnet på front-end, kan du endre navnet i tekstkolonnen .

Deretter velger du Etikett fra verktøykassen og setter inn 2 klistremerker i denne boksen. Gi nytt navn til søknadsnummer og det andre navnet til student-ID .

Bruk den samme endringsprosessen via bildetekst i egenskaper . Pass på at du velger den tilsvarende etiketten før du gir den nytt navn.

Deretter setter du inn 2 tekstbokser i klistremerkeboksen. De vil bli brukt til å fange opp brukerinndata. Endre navnene på de 2 tekstboksene via kolonnen (Navn) i Egenskaper som følger:

  • Tekstboks1 : txtApplicationNo
  • Tekstboks2 : txtStudentID

Utforme et studentinformasjonsrammeverk

Sett inn en vertikal ramme og legg til 10 etiketter og 10 tekstbokser. Gi nytt navn til etiketten som følger:

  • Etikett3 : Navn
  • Etikett 4 : Alder
  • Etikett5 : Adresse
  • Etikett 6 : Telefon
  • Etikett 7 : By
  • Etikett8 : Land
  • Etikett9 : Fødselsdato
  • Etikett 10 : Postnummer
  • Etikett11 : Nasjonalitet
  • Etikett12 : Kjønn

Sett inn den tilsvarende tekstboksen ved siden av disse etikettene, og sett inn fra to alternativknappbokser fra brukerskjemaverktøykassen ved siden av kjønnsetiketten. Endre navnene deres til henholdsvis mann og kvinne (med tilpasset).

Design detaljert kursrammeverk

Legg til en annen ramme vertikalt og sett inn 6 klistremerker, 6 tekstbokser som tilsvarer hver etikett. Gi nytt navn til klistremerket som følger:

  • Etikett13 : Kursnavn
  • Etikett14 : Kurs-ID
  • Label15 : Startdato for påmelding
  • Label16 : Sluttdato for registrering
  • Label17 : Kursets varighet
  • Etikett18 : Avdeling

Design betalingsdetaljramme

Sett inn en ny ramme, legg til en ny etikett og gi den nytt navn "Ønsker du å oppdatere betalingsdetaljene?" Sett inn 2 alternativknapper ; gi dem nytt navn til Ja og Nei .

På samme måte legger du til en ny ramme som inneholder 2 ekstra etiketter og 2 kombinasjonsbokser. Gi nytt navn til etiketten som følger:

  • Label19 : Betaling mottatt
  • Label20 : Betalingsmåte

Design av navigasjonsbrett

I den siste rammen legger du til 3 knapper fra verktøykassen, som inneholder kode for å distribuere skjemaene. Gi knappene nytt navn som følger:

  • Knapp1 : Lagre detaljer
  • Knapp 2 : Fjern skjema
  • Knapp 3 : Avslutt

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Skriv automatisk skjemakode: Knapp for å lagre informasjon

Dobbeltklikk på Lagre detaljer- knappen . I neste modul setter du inn 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 av koden i automatisert form:

Tekstbokser inkluderer tekst og numeriske verdier, så du må begrense brukerinndata. Søknadsnummer, student-ID, alder, telefon, kurs-ID og kursvarighet vil kun inneholde tall, resten vil inneholde tekst.

Ved å bruke IF- kommandoen utløser koden en popup-feil hvis brukeren skriver inn et tegn eller en tekstverdi i et numerisk felt.

Fordi det er feilvalidering, må du koble tekstboksene til cellene i regnearket.

Lastrow- variablene beregner den siste fylte raden og lagrer verdien inne for fleksibel bruk.

Til slutt limes disse verdiene inn i tekstboksen i det koblede Excel-arket.

Kod skjemaet slett og avslutt-knappen

I slett- knappen må du skrive kode som sletter gjeldende verdier fra brukerens skjema 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 skriver du inn følgende kode i brukerens skjema:

Private Sub CommandButton5_Click()
Unload Me
End Sub

I det siste trinnet må du skrive inn de siste kodebitene for å lage rullegardinverdiene for kombinasjonsboksen (i kassarammen).

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

Ovenfor er hvordan du oppretter et automatisk dataregistreringsskjema i Excel VBA . Håper artikkelen er nyttig for deg.


Instruksjoner for bruk av ABS-funksjonen til å beregne absoluttverdi i Excel

Instruksjoner for bruk av ABS-funksjonen til å beregne absoluttverdi i Excel

Instruksjoner for bruk av ABS-funksjonen til å beregne absoluttverdi i Excel ABS-funksjonen brukes til å beregne absoluttverdien av et tall eller en beregning. Det er ganske enkelt å bruke ABS-funksjonen

Instruksjoner for hvordan du skriver øvre indeks og nedre indeks i Excel

Instruksjoner for hvordan du skriver øvre indeks og nedre indeks i Excel

Instruksjoner for hvordan du skriver øvre indeks og nedre indeks i Excel Du må ofte redigere matematiske formler i Excel, men har problemer med uttrykk.

Hvordan nummerere sider uten å starte fra 1 i Excel

Hvordan nummerere sider uten å starte fra 1 i Excel

Slik nummererer du sider uten å starte fra 1 i Excel Å nummerere sider i Excel er ganske enkelt, men å nummerere sider som starter fra et annet tall enn 1 er vanskelig.

Instruksjoner for utskrift av gjentatte titler i Excel

Instruksjoner for utskrift av gjentatte titler i Excel

Instruksjoner for gjentatt utskrift av titler i Excel For Excel-tabeller med mange utskrevne sider setter folk ofte opp gjentatt utskrift av titler for å unngå forvirring med regnearket.

Hvordan bruke Count, Counta, Countif, Countifs tellefunksjoner i Excel

Hvordan bruke Count, Counta, Countif, Countifs tellefunksjoner i Excel

Hvordan bruke Count, Counta, Countif, Countifs tellefunksjoner i Excel.Tellefunksjoner i Excel er delt inn i mange typer, de fleste av disse funksjonene er svært enkle å bruke for telling.

Slik bruker du Geografi-funksjonen i Microsoft Excel

Slik bruker du Geografi-funksjonen i Microsoft Excel

Slik bruker du Geografi-funksjonen i Microsoft Excel, Ved å bruke Geografi kan du få tilgang til geografiske data i et Excel-regneark. Nedenfor ser du hvordan du bruker Geografi-funksjonen

Hvordan beregne prosentandel i Excel

Hvordan beregne prosentandel i Excel

Hvordan beregne prosenter i Excel, Microsoft Excel gir deg mange forskjellige måter å beregne prosenter på. La oss lære med WebTech360 hvordan du beregner prosenter i Excel

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA

Hvordan lage et automatisk dataregistreringsskjema i Excel VBA, Ved å bruke skjemaer i VBA får du et tomt lerret for å designe og ordne skjemaer for å passe alle behov

Hvordan lage et fossefalldiagram i Excel

Hvordan lage et fossefalldiagram i Excel

Hvordan lage et fossefallsdiagram i Excel, Fossdiagrammer brukes til å illustrere svingningene i delsummer i Excel. La oss lære hvordan du lager diagrammer med WebTech360

Instruksjoner for å skjule rader og kolonner i Excel

Instruksjoner for å skjule rader og kolonner i Excel

Instruksjoner for å skjule rader og kolonner i Excel Noen ganger er Excel-filen for lang og du ønsker å skjule ubrukte deler eller av en eller annen grunn ikke vil vise den til andre.