Excel je zelo uporaben ko se soočimo z vnosom podatkov. Uporabimo lahko vgrajen obrazec, lahko pa si seveda izdelamo svojega. Vse skupaj je zelo preprosto in velikokrat nam precej olajša delo.
Kot vedno zaženemo VBA (Alt+F11) in vstavimo obrazec (Insert -> UserForm). Najprej se nam prikaže samo ozadje obrazca, ki ga oblikujemo po želji; vstavimo Tekstovna polja (textbox), gumbe (button), Imena (label),...
V naslednjem primeru je prikazana izdelava obrazca za vnos podatkov o prometni signalizaciji v določenem naselju.
Sama oblika obrazca je dokaj preprosta in pregledna, ker se mi ni dalo preveč ukvarjati z lepotičenjem.
Ko zaključimo z oblikovanjem obrazca, pa je potrebno dodati tudi nekaj programske kode, ki poskrbi, da postane obrazec uporaben. V oknu Project Explorer (na zgornji sliki je to levo zgornje okno) poiščemo naš obrazec (UserForm1), kliknemo nanj z desno tipko in izberemo View Code.
Vpišemo kodo, ki naj se izvede:
Private Sub Initialize()
'ob zagonu pobrišemo vsa polja v obrazcu.
txtOdsek.Value = ""
txtOznaka.Value = ""
txtNaziv.Value = ""
txtStacionaza = ""
txtVisina = ""
txtOpomba = ""
End Sub
Private Sub cmdIzhod_Click()
'gumb za izhod zapre obrazec
Unload Me
End Sub
Private Sub cmdVnos_Click()
'ko kliknemo na gumb vnos, naj se vsebina obrazca vnese v prvo prazno vrstico
'na delovnem listu "podatki"
ActiveWorkbook.Sheets("podatki").Activate
Range("A1").Select
Do
If IsEmpty(ActiveCell) = False Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True
ActiveCell.Value = txtOdsek.Value
ActiveCell.Offset(0, 1) = txtOznaka.Value
ActiveCell.Offset(0, 2) = txtNaziv.Value
ActiveCell.Offset(0, 3) = txtStacionaza.Value
ActiveCell.Offset(0, 4) = txtVisina.Value
ActiveCell.Offset(0, 5) = txtOpomba.Value
'Range("A1").Select
ActiveCell.Offset(1, 0).Select
End Sub
In zaženemo s tipko F5 ali pa kliknemo na Run -> Run Sub/User Form.