Monday, October 8, 2018

√ Mencari Data Di Excel Dengan Userform Validasi

Bagaimana coding untuk mencari data pada sebuah range atau saya katakana disini validasi data antara textbox yang ada pada userform dengan range yang ada pada worksheet untuk menemukan data yang sama dengan data yang dientrikan pada textbox area dan apabila ditemukan data yang sama maka munculkan sebuah warta berupa pesan “Data Ditemukan” dan hasilnya sanggup menampilkan UserForm Ucapan Selamat Datang, sedangkan jikalau data tidak ditemukan pada database yang telah ditentukan pada range maka munculkan juga sebuah warta berupa pesan bahwa “Data Tidak Ditemukan”

Coding ini biasanya dipakai untuk menciptakan sebuah Form Login sederhana secara banyak atau sanggup dibilang Login Multi User namun bedanya disini yakni tidak memakai password hanya user saja yang dicari. Anda sanggup menyebarkan bahan ini untuk menciptakan UserForm Login Multi User. Dari citra kondisi diatas Seharusnya Anda sudah sanggup memiliki alur algoritma untuk menciptakan jadwal (Pengcodingan). Untuk bahan Form Login sudah pernah saya bahas pada artikel sebelumnya silakan baca Contoh Template Login

Cara Membuat Validasi Data Untuk Menemukan Data

Setelah Anda mengetahui alur kerja atau algoritma diatas mari kita buat desain untuk menciptakan validasi data entri dengan database. Namun sebelumnya untuk mempersingkat pemahaman Anda saya akan menciptakan algoritma sederhana

“Entri Data – Cari – Jika ditemukan munculkan pesan dan tampilkan Form Selamat Datang – Jika tidak ditemukan munculkan pesan warta data tidak ditemukan.”

Untuk desain atau rancangan userform lihatlah teladan desain sederhana untuk menciptakan validasi data dengan userform berikut ini.



Pertama silakan buat 2 buah UserForm, untuk Form pertama lakukan seting atau desain menyerupai gambar berikut ini

Dalam userform Validasi Database diatas terdapat 4 buah Objek yaitu Label1, Textbox1, CommandButton1 dan Frame. Untuk Label1 silakan ganti Caption pada Properties menjadi “Nama” Anda sanggup merubahnya sesuai dengan kebutuhan sedangkan untuk textbox1 ganti Name menjadi “TextboxCari”  dan untuk CommandButton1 silakan ganti Label para properties menjadi “Cari” Objek Cari ini dipakai sebagai tombol perintah untuk mencari atau memvalidasi data antara textbox1 dengan database yang ada pada range.


Baca:
Cara Membuat Validasi Data Range Melalui Form

Langkah Berikutnya untuk UserForm2 silakan tambahkan objek Label1 memakai ToolBox dan ganti Caption pada properties menjadi “Selamat Datang” Anda sanggup merubah ukuran dan ketebalan dari goresan pena “Selamat Datang” dengan merubah Font pada Properties menjadi size 14 dan style Font Bold. Lihatlah tampilan untuk merubah ukuran font berikut ini





Tampilan sesudah setting font pada label1 “Selamat Datang” yang dilakukan pada UserForm2 yakni sebagai berikut dan jangan lupa hilangkan Caption pada UserForm2 tersebut sehingga title pada Form Selamat Datang dikosongkan.



Form Selamat Datang inilah yang nantinya ditampilkan apabila data yang diketikkan pada textbox1 yang ada di UserForm1 sesuai dengan database yang ada pada range.

Langkah berikutnya kita masuk ke Worksheet untuk menciptakan tabel database caranya yaitu silakan buat daftar nama pada kolom B dengan urutan sebagai berikut :



Dari tabel diatas sengaja saya tuliskan datftar nama secara tidak beraturan artinya abjad kapital tidak mengakibatkan patokan dalam validasi nantinya untuk dipanggil melalui userform. Terlihat terang ada yang memakai abjad kapital semua ada juga yang awalnya saja abjad besar ada juga yang memakai abjad kecil semua. Hal ini berarti case sensitive tidak kuat dalam pemrograman sanggup dituliskan MatchCase=False
Setelah Anda menuliskan daftar nama diatas untuk mempermudah dalam administrasi database silakan ganti Sheet2 menjadi “Database” sesungguhnya tidak diganti nama sheet juga tidak persoalan namun dalam hal ini biar Anda gampang dalam menganalisa pembuatan coding nantinya.

Coding Validasi Data Dengan Database

Oke, sesudah Anda menciptakan daftar nama dalam database worksheet tersebut saatnya kita menciptakan coding. SIlakan Anda masuk ke VBA editor dan tampilkan mode Code kemudian kita tambahkan 1 buah mekanisme dengan nama “TemukanData”

Syntax:
Sub TemukanData()
Tuliskan coding disini
End Sub

Setelah Anda menuliskan mekanisme TemukanData kemudian tuliskan coding dibawah ini atau copy pastekan kedalam mekanisme diatas sehingga coding menjadi menyerupai berikut

Sub TemukanData()
    Dim ws As Worksheet
    Dim Pencarian As String
    Dim aCell As Range

    On Error GoTo Err

    'Setting atau memilih worksheet database
    Set ws = Sheets("Database")

    With ws
        'Textbox pencarian kata
        Pencarian = TextboxCari.Value

        'Kolom A yakni 1 sedangkan kolom B yakni 2 dan seterusnya
        'xlWhole diguanakan untuk pencarian secara lengkap
        'MatcCase difungsikan untuk memilih abjad kapital atau tidak
        Set aCell = .Columns(2).Find(What:=Pencarian, LookIn:=xlValues, _
        LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)

        'Untuk mengecek apakah ditemukan
        If Not aCell Is Nothing Then
            'Kode dibawah sanggup dipakai untuk menemukan baris jikalau ditemukan maka hapus
            '.Rows(aCell.Row).Delete ' arahan untuk menghapus jikalau diharapkan sanggup dipakai code ini
            'Application.DisplayAlerts = False ' code ini dipakai biar tidak muncul peringatan
            MsgBox "Data Ditemukan", vbInformation, "Informasi"
            Unload Me
            UserForm2.Show
        Else 'Jika data tidak ditemukan maka munculkan pesan
            MsgBox "Data Tidak Ditemukan", vbInformation, "Informasi"
        End If
    End With

    Exit Sub
Err:
    MsgBox Err.Description
End Sub

Keterangan Coding

Dim ws As Worksheet
Dim Pencarian As String
Dim aCell As Range

Saya definisikan untuk ws merupakan Worksheet, untuk Pencarian saya definisikan menjadi string kemudian aCell merupakan alamat cell saya definisikan menjadi range.
Set ws = Sheets("Database") merupakan setting biar pengambilan data yakni di worksheet “Database” jadi jikalau tidak ditemukan nama worksheet “Database” maka jadwal tidak akan berfungsi.

Pencarian = TextboxCari.Value, kita asumsikan bahwa Pencarian merupakan data (value) yang dituliskan pada TextboxCari

Code:
Set aCell = .Columns(2).Find(What:=Pencarian, LookIn:=xlValues, _
        LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)
Code diatas kita setting untuk alamat range yakni berada di kolom 2 atau kolom B,artinya jikalau textboxcari atau Pencarian kata sesuai dengan data yang ada pada kolom B dan tanpa memperhatikan abjad besar kecilnya not case sensitive maka lakukan pengecekan kondisi

If Not aCell Is Nothing Then, jikalau data tidak ditemukan maka munculkan pesan kemudian warta bahwa data ditemukan pada database kemudian lakukan perintah tutup form aktif (unload me) kemudian tampilkan form “Selamat Datang” atau Form2 maka coding nya yakni “

MsgBox "Data Ditemukan", vbInformation, "Informasi"
Unload Me
UserForm2.Show

Namun apabila tidak ditemukan maka lakukan perintah untuk menciptakan sebuah tampilan pesan warta sehingga codingnya ditambahkan menjadi

Else 'Jika data tidak ditemukan maka munculkan pesan
MsgBox "Data Tidak Ditemukan", vbInformation, "Informasi"
End If
End With
Exit Sub

Untuk menghadle error tambahkan coding
Err:
MsgBox Err.Description

Karena pada userform1 telah dibentuk sebuah objek CommandButton untuk memanggil mekanisme “TemukanData” maka silakan tambahkan mekanisme pada object CommandButton1 sebagai berikut untuk memanggilnya

Private Sub CommandButton1_Click()
Call TemukanData
End Sub

Cara Test dan Menjalankan Program validasi Database

Setelah semua coding diatas telah benar diketikan maka langkah berikutnya kita uji coding apakah sudah benar atau belum silakan klik tombol RUN atau icon segitiga berwarna hijau pada VBA editor diatas maka userform1 akan muncul kemudian coba tuliskan salah satu user yang ada dalam database contoh




Perhatikan saya menuliskan salah satu user pada textbox tersebut dengan nama “supriyatna” kemudian klik tombol “Cari” maka sebuah pesan akan muncul




Jika Anda klik OK maupun close (X) maka munculah form “Selamat Datang”




Namun apabila saya mengetikan user yang tidak sesuai dengan database yang dientrikan contohnya “Boss”





Maka akan muncul sebuah pesan warta “Data Tidak Ditemukan” lihatlah gambar diatas untuk memahaminya.

Jika Anda menambahkan user lain pada database sepanjang berada di kolom B maka bias dipanggil tetapi apabila Anda memasukan nama selain di kolom B walaupun sama maka jadwal tidak akan berfungsi.

Demikian tutorial bagaimana mencari data dengan userform untuk validasi data semoga bermanfaat dan silakan kembangkan kembali untuk mengotak atik dan selamat berguru jangan lupa jikalau ada pertanyaan seputar bahan ini untuk tidak sungkan berkomentar dibawah kolom yang telah disediakan.
Sumber http://www.excel-id.com/