Membuat form input data vba pada excel

Microsoft Excel merupakan salah satu pengolah data berup aangka. Salah satu data yang sering diolah pada lembaga pendidikan adalah data siswa. Dalam menginput data siswa, Excel memiliki fitur yang kita dapat membantu kita agar lebih efektif dan efisien dalam menginput data karena tidak harus mengisi data satu persatu. Fitur itu ialah pembuatan database sendiri seperti membuat Form Input Data Siswa Berbasis Excel dengan VBA Pembuatan database tersebut dapat dilakukan dengan membuat macros. Berikut ini adalah langkah-langkah membuat macros pada Microsoft Excel :

  1. Buka aplikasi Microsoft Excel, lalu buat lembar kerja baru.
  2. Kita aktifkan VBA editor dengan menekan shortcut ALT+F11, maka akan tampil lembar kerja Microsoft Visual Basic for Applications.
  3. Kemudian pilih tab Insert lalu klik UserForm. Kemudian akan muncul kotak toolbox.

Membuat form input data vba pada excel
 
Membuat form input data vba pada excel

4. Pada kotak Toolbox tersebut, kita dapat memilih berbagai jenis yang kita butuhkan dalam membuat form. Beberapa yang saya gunakan antara lain:

a. Label : digunakan untuk menuliskan kriteria atau data yang dimaksudkan. Secara default label akan dinamai Label1, Label2, dan seterusnya. Jadi untuk mengubah nama label tersebut kita dapat mengubah nama Caption pada Properties sesuai kebutuhan kita.

b. Combo Box : digunakan untuk membuat beberapa pilihan sehingga data siswa dapat diisi dengan memilih salah satu pilihan tersebut.

c. TextBox : digunakan sebagai tempat pengisian data sehingga untuk mengisi data.msiswa kita dapat menuliskannya pada format yang telah diberikan.

d. Common Button : digunakan sebagai button yang berfungsi melakukan perintah sesuai captionnya.

e. Dan lain-lain.

Membuat form input data vba pada excel

5. Pilih Label pada Toolbox. Atur ukuran label. Kemudian kita ubah nama Label tersebut dengan mengubah captionnya menjadi NIS dan Namesnya menjadi NIS. Lakukan hal tersebut pada label-label selanjutnya antara lain label untuk Nama Lengkap, Tempat Lahir, Tanggal Lahir, Jenis Kelamin, Alamat, NISN, No. HP, No. SKHUN, No. Seri Ijazah, Nama Ibu Kandung, Tahun Lahir, Pekerjaan Ibu, Pendidikan Ibu, Nama Ayah, Tahun Lahir, Pekerjaan Ayah, Pendidikan Ayah, Penghasilan Ortu, dan Alamat Ortu

*untuk Name harus diisi tanpa spasi

Membuat form input data vba pada excel
6. Pilih Combo Box pada Toolbox. Atur ukurannya. Kemudian, untuk mengubah nama combo box, kita dapat mengganti namesnya menjadi CBOKelamin untuk combo box jenis kelamin. Lakukan hal tersebut pada combo box selanjutnya antara lain combo box untuk jenis pekerjaan ayah dan jenis pekerjaan ibu.

Membuat form input data vba pada excel

7. Pilih Text Box pada Toolbox. Atur ukurannya. Kemudian, untuk mengubah nama text box, kita dapat mengganti namesnya menjadi TXTNis untuk text box pengisian NIS. Lakukan hal tersebut pada text box selanjutnya antara lain Nama Lengkap, Tempat Lahir, Tanggal Lahir, Alamat, NISN, No. HP, No. SKHUN, No. Seri Ijazah, Nama Ibu Kandung, Tahun Lahir, Pekerjaan Ibu, Nama Ayah, Tahun Lahir, Pendidikan Ayah, Penghasilan Ortu, dan Alamat Ortu.

Membuat form input data vba pada excel

8. Pilih Common Button pada Toolbox. Atur ukurannya. Kemudian, untuk mengubah nama common button, kita dapat mengganti captionnya menjadi Simpan dan namesnya menjadi CMDSimpan untuk common button simpan. Lakukan hal tersebut pada common button selanjutnya yaitu Cari Data Siswa dan Close.

Membuat form input data vba pada excel

Apabila telah selesai, maka akan keluar hasil berikut:

Membuat form input data vba pada excel

9. Setelah mendapatkan hasil tersebut, kita membuat script VBA. Silahkan Pilih tab View kemudian pilih Code atau klik ikon View Code atau klik kanan lalu klik View Code.

Membuat form input data vba pada excel

Untuk membuat initial pada UserForm, tuliskan script berikut:

Private Sub UserForm_Initialize()
With CBOKelamin
.AddItem “Laki-Laki”
.AddItem “Perempuan”
End With
With CBOPenIbu
.AddItem “Tidak Sekolah”
.AddItem “SD”
.AddItem “SMP”
.AddItem “SMA”
.AddItem “D1”
.AddItem “D2”
.AddItem “D3”
.AddItem “S1”
.AddItem “S2”
.AddItem “S3”
End With
With CBOPenAyah
.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

10. Kemudian kita akan membuat sebuah script VBA untuk “Simpan” data siswa dengan cara menyalin script berikut:

Private Sub CMDSimpan_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.TXTTanggalLahir.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.TXTNoHP.Value
Ws.Cells(iRow, 10).Value = Me.TXTNoSKHUN.Value
Ws.Cells(iRow, 11).Value = Me.TXTNoIjazah.Value
Ws.Cells(iRow, 12).Value = Me.TXTNamaIbu.Value
Ws.Cells(iRow, 13).Value = Me.TXTTahunIbu.Value
Ws.Cells(iRow, 14).Value = Me.TXTPekIbu.Value
Ws.Cells(iRow, 15).Value = Me.CBOPenIbu.Value
Ws.Cells(iRow, 16).Value = Me.TXTNamaAyah.Value
Ws.Cells(iRow, 17).Value = Me.TXTTahunAyah.Value
Ws.Cells(iRow, 18).Value = Me.TXTPekAyah.Value
Ws.Cells(iRow, 19).Value = Me.CBOPenAyah.Value
Ws.Cells(iRow, 20).Value = Me.TXTPenghasilanOrtu.Value
Ws.Cells(iRow, 21).Value = Me.TXTAlamatOrtu.Value

‘clear data siswa
Me.TXTNis.Value = “”
Me.TXTNama.Value = “”
Me.TXTTempatLahir.Value = “”
Me.TXTTanggalLahir.Value = “”
Me.CBOKelamin.Value = “”
Me.TXTAlamat.Value = “”
Me.TXTNISN.Value = “”
Me.TXTNoHP.Value = “”
Me.TXTNoSKHUN.Value = “”
Me.TXTNoIjazah.Value = “”
Me.TXTNamaIbu.Value = “”
Me.TXTTahunIbu.Value = “”
Me.TXTPekIbu.Value = “”
Me.CBOPenIbu.Value = “”
Me.TXTNamaAyah.Value = “”
Me.TXTTahunAyah.Value = “”
Me.TXTPekAyah.Value = “”
Me.CBOPenAyah.Value = “”
Me.TXTPenghasilanOrtu.Value = “”
Me.TXTAlamatOrtu.Value = “”
Me.TXTNis.SetFocus

‘Simpan data
Application.ActiveWorkbook.Save
End Sub

11. Untuk membuat perintah CLOSE, kita dapat menyalin script di bawah ini:

Private Sub CMDClose_Click()
Unload Me
End Sub

12. Lalu buat sebuah validasi data untuk textbox seperti NIS yang berisi data angka agar data yang diinput hanya berupa data angka buka huruf. Apabila data yang dimasukan pada textbox bukan berupa data angka maka secara otomatis akan menampilkan pesan error. Caranya dengan menyalin script di bawah ini:

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

13. Kemudian salin script dibawah ini. Ketika textbox aktif atau dipilih maka warna akan berubah. Script berikut ini juga akan menghasilkan perintah error yang merupakan pemanggilan prosedur dari tahap sebelumnya.

Private Sub TXTNISN_Change()
HanyaAngka
End SubPrivate Sub TXTNoHP_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 txttanggallahir_enter()
TXTTanggalLahir.BackColor = &H80000005
End Sub
Private Sub txttgllahir_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTTanggalLahir.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 txtnohp_Enter()
TXTNoHP.BackColor = &H80000005
End Sub
Private Sub txthp_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTNoHP.BackColor = &HE0E0E0
End Sub

Private Sub txtnoskhun_Enter()
TXTNoSKHUN.BackColor = &H80000005
End Sub
Private Sub txtnoskhun_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTNoSKHUN.BackColor = &HE0E0E0
End Sub

Private Sub txtnoijazah_Enter()
TXTNoIjazah.BackColor = &H80000005
End Sub
Private Sub txtnoijazah_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTNoIjazah.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 txttahunibu_Enter()
TXTTahunIbu.BackColor = &H80000005
End Sub
Private Sub txttahunibu_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTTahunIbu.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 cbopenibu_Enter()
CBOPenIbu.BackColor = &H80000005
End Sub
Private Sub cbopenibu_Exit(ByVal Cancel As MSForms.ReturnBoolean)
CBOPenIbu.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 txttahunayah_Enter()
TXTTahunAyah.BackColor = &H80000005
End Sub
Private Sub txttahunayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTTahunAyah.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 cbopenayah_Enter()
CBOPenAyah.BackColor = &H80000005
End Sub
Private Sub cbopenayah_Exit(ByVal Cancel As MSForms.ReturnBoolean)
CBOPenAyah.BackColor = &HE0E0E0
End Sub

Private Sub txtpenghasilanortu_Enter()
TXTPenghasilanOrtu.BackColor = &H80000005
End Sub
Private Sub txtpenghasilanortu_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TXTPenghasilanOrtu.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

14. Kemudian persiapkan sebuah worksheet. Worksheet ini digunakan 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.

15. Setelah semua script kita tempel dan satukan, maka tahap selanjutnya adalah menjalankannya. Sebelum menjalankannya, kita harus memastikan bahwa kode yang kita tuliskan sesuai dengan nama yang kita berikan pada masing-masing tool, contohnya TextBox NIS kita namai TXTNis maka pada script kita tuliskan juga TXTNis. Cara untuk menjalankannya adalah klik tab Run lalu pilih Run Sub/UserForm.

Membuat form input data vba pada excel

Kemudian apabila telah berhasil akan muncul Form Input Data Siswa seperti dibawah ini. Kita tinggal melakukan pengisian data siswa sesuai kebutuhan.

Membuat form input data vba pada excel

Demikian Cara Membuat Form Input Data Siswa menggunakan Macros pada Ms. Excel

Berikut link untuk mendowload filenya:

Membuat Macros Pada Excel

Semoga bermanfaat ^^

Bagaimana langkah langkah input data dengan menggunakan form pada Excel?

Untuk menambahkan data, silahkan ikuti tahap-tahap berikut:.
Pertama, Klik New pada Window Form Input Data..
Kedua, masukkan data ke masing-masing kolom..
Ketiga, jika sudah selesai input data, Anda bisa klik New atau tekan tombol Enter pada keyboard. Berikut hasilnya:.

Apa fungsi data form pada Excel?

DATA FORM merupakan salah satu fitur excel dalam bentuk kotak dialog yang secara otomatis akan menampilkan maksimal sampai 32 header kolom sebagai label dimana pada setiap label tersebut terdapat sebuah kotak isian yang bisa digunakan untuk menambahkan atau mengedit data terkait.

Bagaimana cara mengaktifkan macro di Excel?

Catatan: Opsinya sedikit berbeda dalam Excel, kami akan memanggilnya selagi kami pergi..
Klik tab File..
Klik Opsi..
Klik Pusat Kepercayaan, lalu klik Pengaturan Pusat Kepercayaan..
Dalam Pusat Kepercayaan, klik Pengaturan Makro..
Buat pilihan yang Anda inginkan, lalu klik OK..

Apa itu Macro di Excel?

Macro adalah otomasi di Microsoft excel berfungsi untuk melakukan tugas-tugas yang sifatnya berulang atau repetitif. Fungsi dari macro ini sendiri adalah untuk efisiensi pekerjaan dalam membuat laporan pada Microsoft Excel hanya dengan sekali klik pada tombol macro.