Friday, December 28, 2018

√ Script Cari Data Siswa Dengan Commandbutton Pada Form Input Data

Jika Anda telah membaca artikel tutorial aku mengenai Form Input Data Siswa Berbasis Excel Versi Update Maret 2015 dengan VBA munkin Anda telah berhasil menciptakan sebuah UserForm yang interaktif namun ada beberapa pertanyaan dan aku lihat pada komentar diantaranya bagaimana cara menciptakan sebuah arahan pencarian data siswa memakai CommandButton.

Baiklah berikut aku uraikan bagaimana cara menciptakan sebuah pencarian data pada UserForm input data siswa.

Langkah Pertama

Silakan buka kembali desain atau rancangan Form Input Data Siswa yang sudah dibentuk lalu aktifkan juga VBA editornya dengan cara menekan tombol F11, kalau sudah final aktifkan atau klik FormSiswa

Langkah Kedua

Tahap berikutnya ialah Anda harus menambahkan satu buah Frame dan tempatkan pada rancangan Form Siswa tersebut, lalu juga tambahkan ComboBox, Label, serta satu buah CommandButton dan rancang sampai menyerupai berikut ini


Perhatikan yang ditunjukan oleh anak panah diatas,

Langkah Ketiga

Tahap berikutnya ialah Anda harus merubah properties dari setiap masing-masing objek dengan rincian sebagai berikut :

Frame2 hapus pada properties Caption
Label22 ganti Caption menjadi "Masukan NIS"
ComboBox ganti Name menjadi "CBOCari" RowSource silakan ketikkan : =DatabaseSiswa!$B$2:$B$1000
CommandButton ganti Name menjadi "CMDCari" dan Caption menjadi "Cari"

Langkah Ke-Empat

Tahap keempat ialah kita akan mengetikkan script untuk tombol Cari Data Siswa silakan double klik dan ketikkan script berikut :

Private Sub TBLCariData_Click()
Frame2.Visible = True
CBOCari.SetFocus
End Sub
Pada UserForm_Initialize silakan tambahkan script berikut untuk menyembunyikan objek Frame2
Frame2.Visible = False

Tahap Kelima

Tahap berikutnya ialah kita akan menciptakan sebuah script VBA yang dipakai untuk mencari dan menemukan data yang ada di database siswa dengan memakai tombol. Caranya ialah silakan double klik CMDCari dan ketikkan script berikut :

Private Sub CMDCari_Click()
Dim CARI As Range
Dim ws As Worksheet
Dim Nama As String

Set ws = Worksheets("databasesiswa")
    Nama = Me.CBOCari.Text
    Set CARI = ws.Range("B2:B1000").Find(What:=CBOCari)
    If Not CARI Is Nothing Then
       
        Frame2.Visible = False
        CBOCari.Text = ""
        TXTNis.Text = ws.Cells(CARI.Row, 2)
        TXTNama.Text = ws.Cells(CARI.Row, 3)
        TXTTempatLahir.Text = ws.Cells(CARI.Row, 4)
        TXTTglLahir.Text = ws.Cells(CARI.Row, 5)
        CBOKelamin.Text = ws.Cells(CARI.Row, 6)
        TXTAlamat.Text = ws.Cells(CARI.Row, 7)
        TXTNISN.Text = ws.Cells(CARI.Row, 8)
        TXTHP.Text = ws.Cells(CARI.Row, 9)
        TXTSKHUN.Text = ws.Cells(CARI.Row, 10)
        TXTIjasah.Text = ws.Cells(CARI.Row, 11)
        TXTNamaIbu.Text = ws.Cells(CARI.Row, 12)
        TXTThnLahirIbu.Text = ws.Cells(CARI.Row, 13)
        TXTPekIbu.Text = ws.Cells(CARI.Row, 14)
        CBOPendidikanIbu.Text = ws.Cells(CARI.Row, 15)
        TXTNamaAyah.Text = ws.Cells(CARI.Row, 16)
        TXTThnAyah.Text = ws.Cells(CARI.Row, 17)
        TXTPekAyah.Text = ws.Cells(CARI.Row, 18)
        CBOPendidikanAyah.Text = ws.Cells(CARI.Row, 19)
        TXTPengAyah.Text = ws.Cells(CARI.Row, 20)
        TXTAlamatOrtu.Text = ws.Cells(CARI.Row, 21)
       
        TXTNis.BackColor = &H8000000E
        TXTNama.BackColor = &H8000000E
        TXTTempatLahir.BackColor = &H8000000E
        TXTTglLahir.BackColor = &H8000000E
        CBOKelamin.BackColor = &H8000000E
        TXTAlamat.BackColor = &H8000000E
        TXTNISN.BackColor = &H8000000E
        TXTHP.BackColor = &H8000000E
        TXTSKHUN.BackColor = &H8000000E
        TXTIjasah.BackColor = &H8000000E
        TXTNamaIbu.BackColor = &H8000000E
        TXTThnLahirIbu.BackColor = &H8000000E
        TXTPekIbu.BackColor = &H8000000E
        CBOPendidikanIbu.BackColor = &H8000000E
        TXTNamaAyah.BackColor = &H8000000E
        TXTThnAyah.BackColor = &H8000000E
        TXTPekAyah.BackColor = &H8000000E
        CBOPendidikanAyah.BackColor = &H8000000E
        TXTPengAyah.BackColor = &H8000000E
        TXTAlamatOrtu.BackColor = &H8000000E
        Else
        MsgBox "Maaf NIS tidak ditemukan", 48, "Peringatan..."
        CBOCari.Text = ""
        CBOCari.SetFocus

    End If
End Sub
Selesai.
Dari kode-kode VBA diatas akan menghasilkan alur sebagai berikut
Jika di klik tombol "Cari Data Siswa" maka akan muncul Frame yang didalamnya terdapat ComboBox beserta tombol Cari


Jika Anda memasukan data NIS pada Combo diatas lalu tekan tombol Cari maka data yang ditemukan dengan ID NIS akan ditampilkan pada Field masing-masing dan kesannya akan menyerupai gambar dibawah ini lalu Fram akan otomatis menghilang



Lalu bagaimana kalau Anda ingin mencari data siswa kembali?
Silakan tekan tombol "Cari Data Siswa" maka fram pencarian juga akan otomatis muncul dan begitu seterusnya.

Selamat mencoba, supaya bermanfaat.
Sumber http://www.excel-id.com/