CakBud: Ketika Hidup Harus Bermakna Untuk Sesama..

Mencari Data Pada Lembar Kerja Excel Dengan VBA

Artikel ini mencoba menjawab pertanyaan dari Nana

…Saya sedang merancang sebuah makro untuk aplikasi yang berfungsi untuk mengkopi data di sheet1 ke sheet2. Untuk mengkopinya sudah bisa, tapi ada kendala ketika saya hendak memunculkan “Msgbox” apabila cell yang dituju di sheet2 yang akan digunakan sebagai ojek paste bukanlah cell yang masih kosong (sudah terisi sebelumnya) maka akan muncul “Msgbox” yang kita inginkan….

Untuk kebutuhan seperti yang dibutuhkan diatas, saya rasa kita bisa menggunakan pencarian data pada lembar kerja yang digunakan sebelum proses simpan/paste.

Persiapan
Buat form dan tempel sebuah TextBox dan CommandButton

Form Cari Data

Berikutnya buat function untuk pencarian data, pada intinya untuk mencari data pada sebuah lembar kerja excel dengan VBA kita bisa menggunakan fungsi “find (namasheet.find)”

find.jpg

Penulisan Kode Program
Berikut kode fungsi pencariannya.

Function CariData(Optional NamaSheet As String) As Long

‘Cek Lembar Kerja Aktif
If NamaSheet = vbNullString Then
NamaSheet = ActiveSheet.Name
End If

‘    mencari data pada lembar kerja excel
On Error Resume Next
With Worksheets(NamaSheet)
CariData = .Cells.Find(UserForm1.TextBox1.Text, .Cells(1), xlFormulas, xlWhole, xlByRows, xlPrevious).Row
End With

End Function

kemudian pada tombol simpannya (CommandButton1_Click) tuliskan kode berikut :

Private Sub CommandButton1_Click()
CekKode = CariData(“Sheet1″)

‘Jika CekKode tidak sama dengan 0, maka data ditemukan dan sebaliknya.

If CekKode <> 0 Then
MsgBox “Data Sudah pernah diisikan”   ‘Jika data ditemukan
Else
‘Jika data tidak ditemukan/belum pernah dientri
MsgBox “Apakah akan menambah data baru?”
End If
End Sub

Demikian semoga membantu, semua masukan silahkan masukkan melalui form komentar, terima kasih, selamat berdjoeang dan tetap semangat.

Share

You can follow any responses to this entry through the RSS 2.0 feed.