Anda di halaman 1dari 18

Form Input Data Siswa Berbasis Excel Versi

Update Maret 2015 dengan VBA


114

Aplikasi Excel

A+A-
PRINTEMAIL

Input data siswa yang masih menggunakan Excel sebagai pengolahan database siswa
memang masih banyak sekali digunakan. Aplikasi yang pernah saya buat
tentang Aplikasi data dan Profil Siswa Berbasis Excel memang belum sempurna hanya
sebatas menggunakan rumus-rumus excel standar yang biasa dan sering digunakan
sehari-hari.

Kali ini saya membuat sebuah Form Input Data Siswa Berbasis Excel Versi Update
Maret 2015 dengan VBA yang seblumnya masih menggunakan cara lama. Untuk
melihat screeshoot silakan perhatikan gambar dibawah ini
Form input data siswa ini saya buat secara lengkap dari mulai NIS, NISN, Nama siswa,
Tempat lahir, tanggal lahir, jenis kelamin, alamat, No. HP, No, SKHUN, No. Ijasah,
Nama Ibu kandung, tahun lahir ibu kandung, pekerjaan ibu, pendidikan ibu, nama ayah,
tahun lahir ayah, pekerjaan ayah, pendidikan ayah, penghasilan orang tua, alamat
orang tua.

Field-fiel ini adalah sesuai dengan data di Aplikasi Dapodikmen untuk SMA. Form input
data siswa ini juga dilengkapi dengan tombol "SIMPAN" untuk menyimpan dokumen
data siswa yang telah di entri ke dalam database.
Bagaimana cara membuat Form Input Data Siswa Berbasis Excel ini?
Untuk membuatnya cukup sederhana silakan buat sebuah form seperti tampilakn
diatas. Untuk yang belum mengetahui caranya silakan ikuti langkah berikut

STEP 1
Buat sebuah dokumen baru kemudian aktifkan VBA editor dengan menekan kombinasi
keyboar ALT+F11 kemudian cari menu Insert dan klik UserForm

STEP 2
Untuk langkah kedua setelah menyisipkan sebuah form baru maka kita edit ukuran form
nya sesuai dengan kebutuhan kemudian buat sebuah label dengan menggunakan
Toolbox dan letakkan pada Form kemudian ganti Caption menjadi NIS
STEP 3
Setelah label NIS terbuat silakan buat label berikutnya sesuai dengan Field diatas dan
caranya sama dengan tahap 2 hingga menjadi seperi tampilan berikut. Jangan lupa
ganti properties Caption sesuai dengan fieldnya
STEP 4
Untuk langkah ke-4 Anda harus membuat beberapa TextBox sebagai syarat untuk
pengisian data. Bagi yang belum tahu cara membuat textbox caranya adalah klik
TextBox pada Toolbox kemudan drag ke UserForm misalnya untuk membuat textbox
nis seperti berikut jangan lupa ganti properties Name menjadi "TXTNis" untuk
mendefinisikan supaya tidak lupa dalam membuat kode program VBA nya.

Dari langkah ke-4 tersebut silakan buat beberapa textbox Anda bisa juga
menggunakan teknik copy paste. dan silakan ganti propertis name menjadi seperti
berikut ini.

Textbox1 ganti dengan TXTNis


Textbox2 ganti dengan TXTNama
Textbox3 ganti dengan TXTTempatLahir
Textbox4 ganti dengan TXTTglLahir
Textbox5 ganti dengan TXTALamat
Textbox6 ganti dengan TXTNISN
Textbox7 ganti dengan TXTHP
Textbox8 ganti dengan TXTSKHUN
Textbox9 ganti dengan TXTIjasah
Textbox10 ganti dengan TXTNamaIbu
Textbox11 ganti dengan TXTThnLahirIbu
Textbox12 ganti dengan TXTPekIbu
Textbox13 ganti dengan TXTNamaAyah
Textbox14 ganti dengan TXTThnLahirAyah
Textbox15 ganti dengan TXTPekAyah
Textbox16 ganti dengan TXTPengAyah
Textbox17 ganti dengan TXTAlamatOrtu

Untuk ComboBox silakan buat dengan menggunakan Toolbox dan ganti properties
name nya
ComboBox1 ganti dengan CBO CBOKelamin
ComboBox2 ganti dengan CBO CBOPendidikanIbu
ComboBox3 ganti dengan CBO CBOPendidikanAyah

Hasil akhir kira-kira seperti ini


STEP 5
Untuk tahap ke-5 silakan buat 3 buah tombol dengan menggunakan CommandButton
seperti diatas yang pertama tombol "Simpan" ke-2 tombol "Cari Data Siswa" dan yang
ke-3 "Close" untuk masing-masing tombol silakan ganti properties name menjadi
"TBLSimpan", "TBLCariData", CMDClose"

Untuk yang belum tahu cara membuat CommandButton caranya hampir sama dengan
membuat texbox tetapi disini toolbox yang dipake adalah CommandButton. Jadi kalo
untuk membuat tiga buah tombol maka kita harus membuat 3 buah CommandButton.

STEP 6
Langkah berikutnya adalah langkah membuat script VBA. dan yang pertama silakan
View Code kemudian tuliskan script berikut untuk membuat initial pada UserForm
Private Sub UserForm_Initialize()

With CBOKelamin

.AddItem "Laki-Laki"

.AddItem "Perempuan"

End With

With CBOPendidikanIbu

.AddItem "Tidak Sekolah"

.AddItem "SD"

.AddItem "SMP"

.AddItem "SMA"

.AddItem "D1"

.AddItem "D2"

.AddItem "D3"

.AddItem "S1"

.AddItem "S2"

.AddItem "S3"

End With

With CBOPendidikanAyah

.AddItem "Tidak Sekolah"

.AddItem "SD"

.AddItem "SMP"

.AddItem "SMA"

.AddItem "D1"

.AddItem "D2"

.AddItem "D3"
.AddItem "S1"

.AddItem "S2"

.AddItem "S3"

End With

End Sub

STEP 7
Tahap ke-7 kita akan membuat sebuah script VBA untuk simpan data siswa silakan
ketikkan script VBA nya di bawah ini

Private Sub TBLSimpan_Click()

Dim iRow As Long

Dim Ws As Worksheet

Set Ws = Worksheets("databasesiswa")

'menemukan baris kosong pada database siswa

iRow = Ws.Cells(Rows.Count, 1) _

.End(xlUp).Offset(1, 0).Row

'check untuk sebuah nis

If Trim(Me.TXTNis.Value) = "" Then

Me.TXTNis.SetFocus

MsgBox "Masukan NIS terlebih dahulu Kang.."

Exit Sub

End If
'copy data ke database siswa

Ws.Cells(iRow, 1).Value = Range("X1").Value

Ws.Cells(iRow, 2).Value = Me.TXTNis.Value

Ws.Cells(iRow, 3).Value = Me.TXTNama.Value

Ws.Cells(iRow, 4).Value = Me.TXTTempatLahir.Value

Ws.Cells(iRow, 5).Value = Me.TXTTglLahir.Value

Ws.Cells(iRow, 6).Value = Me.CBOKelamin.Value

Ws.Cells(iRow, 7).Value = Me.TXTAlamat.Value

Ws.Cells(iRow, 8).Value = Me.TXTNISN.Value

Ws.Cells(iRow, 9).Value = Me.TXTHP.Value

Ws.Cells(iRow, 10).Value = Me.TXTSKHUN.Value

Ws.Cells(iRow, 11).Value = Me.TXTIjasah.Value

Ws.Cells(iRow, 12).Value = Me.TXTNamaIbu.Value

Ws.Cells(iRow, 13).Value = Me.TXTThnLahirIbu.Value

Ws.Cells(iRow, 14).Value = Me.TXTPekIbu.Value

Ws.Cells(iRow, 15).Value = Me.CBOPendidikanIbu.Value

Ws.Cells(iRow, 16).Value = Me.TXTNamaAyah.Value

Ws.Cells(iRow, 17).Value = Me.TXTThnAyah.Value

Ws.Cells(iRow, 18).Value = Me.TXTPekAyah.Value

Ws.Cells(iRow, 19).Value = Me.CBOPendidikanAyah.Value

Ws.Cells(iRow, 20).Value = Me.TXTPengAyah.Value

Ws.Cells(iRow, 21).Value = Me.TXTAlamat.Value

'clear data siswa

Me.TXTNis.Value = ""

Me.TXTNama.Value = ""

Me.TXTTempatLahir.Value = ""
Me.TXTTglLahir.Value = ""

Me.CBOKelamin.Value = ""

Me.TXTAlamat.Value = ""

Me.TXTNISN.Value = ""

Me.TXTHP.Value = ""

Me.TXTSKHUN.Value = ""

Me.TXTIjasah.Value = ""

Me.TXTNamaIbu.Value = ""

Me.TXTThnLahirIbu.Value = ""

Me.TXTPekIbu.Value = ""

Me.CBOPendidikanIbu.Value = ""

Me.TXTNamaAyah.Value = ""

Me.TXTThnAyah.Value = ""

Me.TXTPekAyah.Value = ""

Me.CBOPendidikanAyah.Value = ""

Me.TXTPengAyah.Value = ""

Me.TXTAlamatOrtu.Value = ""

Me.TXTNis.SetFocus

'Simpan data

Application.ActiveWorkbook.Save

End Sub

STEP 8
Membuat perintah CLOSE silakan ketikkan script nya dibawah ini dengan cara double
klik tombol CLOSE
Private Sub CMDClose_Click()

Unload Me

End Sub

STEP 9
Membuat sebuah validasi data untuk textbox yang berisi data angka agar data yang
diinput hanya berupa data angka buka hurfu. Apabila data yang dimasukan pada
textbox bukan berupa data angka maka secara otomatis akan menampilkan pesan error
dan ini dia script nya

Private Sub HanyaAngka()

If TypeName(Me.ActiveControl) = "TextBox" Then

With Me.ActiveControl

If Not IsNumeric(.Value) And .Value <> vbNullString Then

MsgBox "Maaf, Masukan data angka saja"

.Value = vbNullString

End If

End With

End If

End Sub

STEP 10
Tahap 10 Anda bisa menggunakan variasi apabila ketika textbox aktif atau dipilih maka
warna akan berubah. Ini dia script nya. Script ini juga akan menghasilkan perintah error
yang merupakan pemanggilan prosedur dari tahap 9 diatas.

Private Sub TXTNISN_Change()

HanyaAngka

End Sub
Private Sub TXTHP_Change()

HanyaAngka

End Sub

Private Sub txtnis_Enter()

TXTNis.BackColor = &H80000005

End Sub

Private Sub txtnis_Exit(ByVal Cancel As MSForms.ReturnBoolean)

HanyaAngka

TXTNis.BackColor = &HE0E0E0

End Sub

Private Sub txtnama_enter()

TXTNama.BackColor = &H80000005

End Sub

Private Sub txtnama_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTNama.BackColor = &HE0E0E0

End Sub

Private Sub txttempatlahir_enter()

TXTTempatLahir.BackColor = &H80000005

End Sub

Private Sub txttempatlahir_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTTempatLahir.BackColor = &HE0E0E0

End Sub
Private Sub txttgllahir_enter()

TXTTglLahir.BackColor = &H80000005

End Sub

Private Sub txttgllahir_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTTglLahir.BackColor = &HE0E0E0

End Sub

Private Sub txtalamat_Enter()

TXTAlamat.BackColor = &H80000005

End Sub

Private Sub txtalamat_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTAlamat.BackColor = &HE0E0E0

End Sub

Private Sub cbokelamin_Enter()

CBOKelamin.BackColor = &H80000005

End Sub

Private Sub cbokelamin_Exit(ByVal Cancel As MSForms.ReturnBoolean)

CBOKelamin.BackColor = &HE0E0E0

End Sub

Private Sub txtnisn_Enter()

TXTNISN.BackColor = &H80000005

End Sub

Private Sub txtnisn_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTNISN.BackColor = &HE0E0E0

End Sub
Private Sub txthp_Enter()

TXTHP.BackColor = &H80000005

End Sub

Private Sub txthp_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTHP.BackColor = &HE0E0E0

End Sub

Private Sub txtskhun_Enter()

TXTSKHUN.BackColor = &H80000005

End Sub

Private Sub txtskhun_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTSKHUN.BackColor = &HE0E0E0

End Sub

Private Sub txtijasah_Enter()

TXTIjasah.BackColor = &H80000005

End Sub

Private Sub txtijasah_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTIjasah.BackColor = &HE0E0E0

End Sub

Private Sub txtnamaibu_Enter()

TXTNamaIbu.BackColor = &H80000005

End Sub

Private Sub txtnamaibu_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTNamaIbu.BackColor = &HE0E0E0
End Sub

Private Sub txtthnlahiribu_Enter()

TXTThnLahirIbu.BackColor = &H80000005

End Sub

Private Sub txtthnlahiribu_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTThnLahirIbu.BackColor = &HE0E0E0

End Sub

Private Sub txtpekibu_Enter()

TXTPekIbu.BackColor = &H80000005

End Sub

Private Sub txtpekibu_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTPekIbu.BackColor = &HE0E0E0

End Sub

Private Sub cbopendidikanibu_Enter()

CBOPendidikanIbu.BackColor = &H80000005

End Sub

Private Sub cbopendidikanibu_Exit(ByVal Cancel As MSForms.ReturnBoolean)

CBOPendidikanIbu.BackColor = &HE0E0E0

End Sub

Private Sub txtnamaayah_Enter()

TXTNamaAyah.BackColor = &H80000005

End Sub

Private Sub txtnamaayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)


TXTNamaAyah.BackColor = &HE0E0E0

End Sub

Private Sub txtthnayah_Enter()

TXTThnAyah.BackColor = &H80000005

End Sub

Private Sub txtthnayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTThnAyah.BackColor = &HE0E0E0

End Sub

Private Sub txtpekayah_Enter()

TXTPekAyah.BackColor = &H80000005

End Sub

Private Sub txtpekayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTPekAyah.BackColor = &HE0E0E0

End Sub

Private Sub cbopendidikanayah_Enter()

CBOPendidikanAyah.BackColor = &H80000005

End Sub

Private Sub cbopendidikanayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)

CBOPendidikanAyah.BackColor = &HE0E0E0

End Sub

Private Sub txtpengayah_Enter()

TXTPengAyah.BackColor = &H80000005

End Sub
Private Sub txtpengayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTPengAyah.BackColor = &HE0E0E0

End Sub

Private Sub txtalamatortu_Enter()

TXTAlamatOrtu.BackColor = &H80000005

End Sub

Private Sub txtalamatortu_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TXTAlamatOrtu.BackColor = &HE0E0E0

End Sub

TAHAP 11
Untuk tahap terakhir silakan buat sebuah Worksheet untuk menyimpan database yang
telah disimpan apabila menekan tombol simpan data maka data siswa akan tersimpan
pada sheet yang telah ditentukan misalnya saya ganti sheet untuk menyimpan
database dengan nama "DatabaseSiswa"

Selesai.
Allahamdulillah, tahapan membuat sebuah userform untuk input data siswa sudah
berhasil dibuat dan untuk menjalankan nya silakan coba klik RUN
Selamat mencoba semoga berhasil.

Update :
Membuat Script Pencarian data siswa silakan lihat Script Cari Data Siswa dengan Com

http://www.excel-id.com/2015/03/form-input-data-siswa-berbasis-excel.html

Anda mungkin juga menyukai