Input data siswa yang masih memakai Excel sebagai pengolahan database siswa memang masih aneka macam digunakan. Aplikasi yang pernah aku buat perihal Aplikasi data dan Profil Siswa Berbasis Excel memang belum tepat hanya sebatas memakai rumus-rumus excel standar yang biasa dan sering dipakai sehari-hari.
Kali ini aku menciptakan sebuah Form Input Data Siswa Berbasis Excel Versi Update Maret 2015 dengan VBA yang seblumnya masih memakai cara lama. Untuk melihat screeshoot silakan perhatikan gambar dibawah ini
Form input data siswa ini aku 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 ialah 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 menciptakan Form Input Data Siswa Berbasis Excel ini?
Untuk membuatnya cukup sederhana silakan buat sebuah form menyerupai tampilakn diatas. Untuk yang belum mengetahui caranya silakan ikuti langkah berikutSTEP 1
Buat sebuah dokumen gres lalu aktifkan VBA editor dengan menekan kombinasi keyboar ALT+F11 lalu cari hidangan Insert dan klik UserForm
STEP 2
Untuk langkah kedua sehabis menyisipkan sebuah form gres maka kita edit ukuran form nya sesuai dengan kebutuhan lalu buat sebuah label dengan memakai Toolbox dan letakkan pada Form lalu ganti Caption menjadi NIS
STEP 3
Setelah label NIS terbuat silakan buat label berikutnya sesuai dengan Field diatas dan caranya sama dengan tahap 2 sampai menjadi seperi tampilan berikut. Jangan lupa ganti properties Caption sesuai dengan fieldnya
STEP 4
Untuk langkah ke-4 Anda harus menciptakan beberapa TextBox sebagai syarat untuk pengisian data. Bagi yang belum tahu cara menciptakan textbox caranya ialah klik TextBox pada Toolbox kemudan drag ke UserForm contohnya untuk menciptakan textbox nis menyerupai berikut jangan lupa ganti properties Name menjadi "TXTNis" untuk mendefinisikan supaya tidak lupa dalam menciptakan arahan agenda VBA nya.
Dari langkah ke-4 tersebut silakan buat beberapa textbox Anda dapat juga memakai teknik copy paste. dan silakan ganti propertis name menjadi menyerupai 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 memakai Toolbox dan ganti properties name nya
ComboBox1 ganti dengan CBO CBOKelamin
ComboBox2 ganti dengan CBO CBOPendidikanIbu
ComboBox3 ganti dengan CBO CBOPendidikanAyah
Hasil final kira-kira menyerupai ini
STEP 5
Untuk tahap ke-5 silakan buat 3 buah tombol dengan memakai CommandButton menyerupai 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 menciptakan CommandButton caranya hampir sama dengan menciptakan texbox tetapi disini toolbox yang dipake ialah CommandButton. Makara kalo untuk menciptakan tiga buah tombol maka kita harus menciptakan 3 buah CommandButton.
STEP 6
Langkah berikutnya ialah langkah menciptakan script VBA. dan yang pertama silakan View Code lalu tuliskan script berikut untuk menciptakan 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 menciptakan 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()STEP 9
Unload Me
End Sub
Membuat sebuah validasi data untuk textbox yang berisi data angka biar 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 beliau 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 dapat memakai variasi apabila saat textbox aktif atau dipilih maka warna akan berubah. Ini beliau script nya. Script ini juga akan menghasilkan perintah error yang merupakan pemanggilan mekanisme dari tahap 9 diatas.
Private Sub TXTNISN_Change()TAHAP 11
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
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 contohnya aku ganti sheet untuk menyimpan database dengan nama "DatabaseSiswa"
Selesai.
Allahamdulillah, tahapan menciptakan sebuah userform untuk input data siswa sudah berhasil dibentuk 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 CommandButton Sumber http://www.excel-id.com/