Diskusi tentang Excel

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 informasi berupa pesan “Data Ditemukan” dan akhirnya dapat menampilkan UserForm Ucapan Selamat Datang, sedangkan jika data tidak ditemukan pada database yang telah ditentukan pada range maka munculkan juga sebuah informasi berupa pesan bahwa “Data Tidak Ditemukan”

Coding ini biasanya digunakan untuk membuat sebuah Form Login sederhana secara banyak atau bisa dibilang Login Multi User namun bedanya disini adalah tidak menggunakan password hanya user saja yang dicari. Anda bisa mengembangkan materi ini untuk membuat UserForm Login Multi User. Dari gambaran kondisi diatas Seharusnya Anda sudah bisa mempunyai alur algoritma untuk membuat program (Pengcodingan). Untuk materi 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 membuat validasi data entri dengan database. Namun sebelumnya untuk mempersingkat pemahaman Anda saya akan membuat algoritma sederhana

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

Untuk desain atau rancangan userform lihatlah contoh desain sederhana untuk membuat validasi data dengan userform berikut ini.



Pertama silakan buat 2 buah UserForm, untuk Form pertama lakukan seting atau desain seperti 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 bisa merubahnya sesuai dengan kebutuhan sedangkan untuk textbox1 ganti Name menjadi “TextboxCari”  dan untuk CommandButton1 silakan ganti Label para properties menjadi “Cari” Objek Cari ini digunakan 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 menggunakan ToolBox dan ganti Caption pada properties menjadi “Selamat Datang” Anda bisa merubah ukuran dan ketebalan dari tulisan “Selamat Datang” dengan merubah Font pada Properties menjadi size 14 dan style Font Bold. Lihatlah tampilan untuk merubah ukuran font berikut ini





Tampilan setelah setting font pada label1 “Selamat Datang” yang dilakukan pada UserForm2 adalah 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 membuat 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 huruf kapital tidak menjadikan patokan dalam validasi nantinya untuk dipanggil melalui userform. Terlihat jelas ada yang menggunakan huruf kapital semua ada juga yang awalnya saja huruf besar ada juga yang menggunakan huruf kecil semua. Hal ini berarti case sensitive tidak berpengaruh dalam pemrograman bisa dituliskan MatchCase=False
Setelah Anda menuliskan daftar nama diatas untuk mempermudah dalam manajemen database silakan ganti Sheet2 menjadi “Database” sebenarnya tidak diganti nama sheet juga tidak masalah namun dalam hal ini agar Anda mudah dalam menganalisa pembuatan coding nantinya.

Coding Validasi Data Dengan Database

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

Syntax:
Sub TemukanData()
Tuliskan coding disini
End Sub

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

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

    On Error GoTo Err

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

    With ws
        'Textbox pencarian kata
        Pencarian = TextboxCari.Value

        'Kolom A adalah 1 sedangkan kolom B adalah 2 dan seterusnya
        'xlWhole diguanakan untuk pencarian secara lengkap
        'MatcCase difungsikan untuk menentukan huruf 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 bisa digunakan untuk menemukan baris jika ditemukan maka hapus
            '.Rows(aCell.Row).Delete ' kode untuk menghapus jika dibutuhkan bisa digunakan code ini
            'Application.DisplayAlerts = False ' code ini digunakan agar 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 agar pengambilan data adalah di worksheet “Database” jadi jika tidak ditemukan nama worksheet “Database” maka program 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 adalah berada di kolom 2 atau kolom B,artinya jika textboxcari atau Pencarian kata sesuai dengan data yang ada pada kolom B dan tanpa memperhatikan huruf besar kecilnya not case sensitive maka lakukan pengecekan kondisi

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

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

Namun apabila tidak ditemukan maka lakukan perintah untuk membuat sebuah tampilan pesan informasi 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 dibuat sebuah objek CommandButton untuk memanggil prosedur “TemukanData” maka silakan tambahkan prosedur 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 misalnya “Boss”





Maka akan muncul sebuah pesan informasi “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 program tidak akan berfungsi.

Demikian tutorial bagaimana mencari data dengan userform untuk validasi data semoga bermanfaat dan silakan kembangkan kembali untuk mengotak atik dan selamat belajar jangan lupa jika ada pertanyaan seputar materi ini untuk tidak sungkan berkomentar dibawah kolom yang telah disediakan.

Related

UserForm 2642425765814861343

Post a Comment

Tulisan ini Bermanfaat..? Silakan berkomentar sesuai topik artikelnya, tidak dianjurkan menggunakan kata-kata yang dapat menimbulkan hal negatif. Mohon maaf apabila tidak memiliki etika akan Admin HAPUS tanpa pemberitahuan kembali. Terimakasih... salam Exceler

emo-but-icon

item