Opprette bruker former i Excel 2003 gjør dataregistrering en lek. Skjemaer som benyttes for å samle inn og verifisere opplysninger fra en bruker beskytte regnearket fra unødvendige endringer og slettinger som brukere kan gjøre hvis gitt tilgang til selve dataene listen på tilsvarende regnearket. Enhver form du lager vil be og samle forskjellig informasjon, men når du lære Visual Basic for Applications ( VBA ) kode for en du kan bygge og tilpasse noen form i Excel 2003 . Du trenger
Microsoft Office Excel 2003
Vis flere instruksjoner
en
I " Verktøy "-menyen , velg "Macro " og deretter " Visual Basic Editor " eller trykk " ALT " + " F11 "for å åpne Visual Basic Editor . Åpne " Main" -menyen , velg " Insert" og klikk " Bruker Form" for å opprette en ny UserForm objekt.
2
Plasser en TextBox kontroll og en etikett kontroll for hver kolonne i regnearket på dannes ved å dobbeltklikke kontrollen eller ved å dra dem fra Toolbox på skjemaet . Erstatte eventuelle TextBox og Label kombinasjon med en ComboBox kontroll hvis du ønsker å presentere brukeren med en liste over alternativer å velge mellom for feltet i stedet for en tekstboks .
3
tildele riktig feltnavn eiendommer til teksten og kombinasjonsbokser ved å skrive inn de tilsvarende database feltnavnene i Navn eiendom linjen i det tilsvarende eiendom vindu . Endre Caption Egenskaper til en brukervennlig skjerm navn samtidig .
4
Dobbeltklikk på " CommandButton " styringsverktøy fire ganger for å legge til det første , forrige , neste og siste knappene i skjemaet . Skriv navnene deres inn i Caption Eiendom linje i sine tilsvarende egenskapsvinduene.
5
Dra en TextBox kontroll på skjemaet i mellom den forrige og neste kontrollene . Type " ROWNUMBER " i sin Name Eiendom linje. Type " 2 " på Tekst Bolig linje.
6
Klikk eller dra ytterligere tre CommandButton kontroller på skjemaet . Type " Lagre ", " Avbryt" og "Legg til" på sine tilsvarende navn Eiendom linjer . Sett Enabled Eiendom til False på Lagre og Avbryt kommando knappene når du skriver inn navnet på Egenskaper.
7
Ordne kontroller og etiketter , deretter justere størrelsen på brukeren skjema med klikk og dra-metoden før du er sikker på at formen er enkel å bruke og behagelig for brukeren .
8
Legg noen ekstra tekstbokser og sette sine egenskaper som trengs for ytterligere funksjonalitet og appell . et skjema tittelen boksen anbefales .
9
Type dette GetData rutine inn i VBA-kode vinduet erstatte de kolonnenavn ( feltnavn egenskaper) og datatyper med prøven Kunde , CustomerName , by , Zip og DatoLagtInn kolonnen navn :
"Private Sub GetData ( )
Dim r As Long
p Hvis IsNumeric ( RowNumber.Text ) Så
r = CLng ( RowNumber.Text )
Else
ClearData
MsgBox " Illegal rad nummer"
Exit Sub
End If
p Hvis r> ; 1 og R < = LastRow Deretter
CustomerId.Text = FormatNumber ( Cells ( r , 1 ) , 0 )
CustomerName.Text = Cells ( r , 2 )
< p> City.Text = Cells ( r , 3 )
State.Text = Cells ( r , 4 )
Zip.Text = Cells ( r , 5 )
DateAdded.Text = FormatDateTime ( Cells ( r , 6 ) , vbShortDate )
DisableSave
ElseIf r = 1 Deretter
ClearData
Else
ClearData
MsgBox " Ugyldig rad nummer"
End If
End Sub "
10
Type dette ClearData rutine i VBA . kodevinduet Bytt ut kolonnenavn ( feltnavn egenskaper) med prøven Kunde , CustomerName , by , postnummer og DatoLagtInn kolonnenavn : en
"Private Sub ClearData ( )
CustomerId.Text = ""
CustomerName.Text = ""
City.Text = ""
State.Text = " AK"
Zip.Text = " "
DateAdded.Text = ""
End Sub "
11
Type dette konstant LastRow kommando i VBA-kode vinduet : en
" Konst LastRow = 20 "
12
Type dette DisableSave rutine inn i VBA-kode vinduet : en
"Private Sub DisableSave ( )
CommandButton5.Enabled = False
CommandButton6.Enabled = False
End Sub "
13
Type denne rutinen heter RowNumber_Change inn i VBA-kode vinduet : en
" Private Sub RowNumber_Change ( )
GetData
End Sub "
14
Sett den aktuelle hendelsen kommandoen ved å skrive dette inn i VBA-kode vinduet : en
" ROWNUMBER . Text = " 2 " "
15
Sett Forrige og Neste knappene koder ved å skrive dette inn i VBA-kode vinduet : en
" Private Sub CommandButton2_Click ( )
< p > Dim r Som Long
p Hvis IsNumeric ( RowNumber.Text ) Så
r = CLng ( RowNumber.Text )
r = r ? 1
p Hvis r> 1 og R < = LastRow Deretter
RowNumber.Text = FormatNumber (r, 0 )
End If
End Hvis
End Sub "
16
Type dette LastRow konstant variabel koden i VBA-kode vinduet : en
" Private Sub UserForm_Initialize ( )
GetData
End Sub "
17
Type dette FindLastRow ( ) rutine inn i VBA-kode vinduet : en
" Private Function FindLastRow ( )
Dim r Som Long
r = 2
Mens r < 65536 Og Len ( Cells (r, 1 ) . tekst) > 0
r = r + 1
Loop
FindLastRow = r
End Function "
18
Type disse UserForm_Initialize hendelser i VBA-kode vinduet:
< p > " LastRow = FindLastRow
Private Sub CommandButton4_Click ( )
LastRow = FindLastRow - en
RowNumber.Text = FormatNumber ( LastRow , 0 )
End Sub "
19
Skriv inn PutData rutine inn koden vinduet endre prøven kolonnenavn og steder å matche regnearket : en
" Private Sub PutData ( )
< p > Dim r Som Long
p Hvis IsNumeric ( RowNumber.Text ) Så
r = CLng ( RowNumber.Text )
Else
MsgBox " Illegal rad nummer "
Exit Sub
End If
p Hvis r> 1 og r < LastRow Da
Cells ( r , 1 ) = Kunde . tekst
Cells ( r , 2 ) = CustomerName.Text
Cells ( r , 3 ) = City.Text
Cells ( r , 4 ) = State.Text
Cells ( r , 5 ) = Zip.Text
Cells ( r , 6 ) = DateAdded.Text
DisableSave
Else
< p > MsgBox " Ugyldig rad nummer"
End If
End Sub "
20
Type dette Legge data rutine inn koden vinduet : en
"Private Sub CommandButton7_Click ( )
RowNumber.Text = FormatNumber ( LastRow , 0 )
End Sub "
21
Type dette validering av data rutine inn koden vindu : en
"Private Sub CustomerId_KeyPress ( ByVal KeyAscii Som MSForms.ReturnInteger )
p Hvis KeyAscii < Asc ( " 0 ") Eller KeyAscii > Asc ( " 9 " ) Then
< p> KeyAscii = 0
End If
End Sub "
22
Type dette Exit hendelsen koden i VBA-kode vinduet:
" Private Sub DateAdded_Exit ( ByVal Avbryt Som MSForms.ReturnBoolean )
p Hvis ikke IsDate ( DateAdded.Text ) Så
DateAdded.BackColor = & HFF og selg
MsgBox " Illegal date value "
Cancel = Sant
Else
DateAdded.BackColor = & H80000005
End If
End Sub "
23
Type disse nedtrekkslisten detaljer inn koden vinduet:
"Private Sub AddStates ()
State.AddItem " AK "
State . AddItem " AL "
State.AddItem " AR "
State.AddItem " AZ"
End Sub "
24
Type disse Viser brukerskjemaet kommandoer inn i VBA-kode vinduet : en
"Public Sub ShowForm ( )
UserForm1.Show vbModal
End Sub "
25 < p> Gjennomgå og tekst av skjemaet instruksjoner og koding ved å velge " Run " fra "Main Visual Basic for Applications -menyen. "