Skip to content Skip to sidebar Skip to footer
Cara Membuat Tombol Edit Delete UserForm VBA Excel

Cara Membuat Tombol Edit Delete UserForm VBA Excel

Sebelumnya membahas mengenai cara menampilkan data dari ListBox ke dalam kolom form input👀, kali ini ini melanjutkan dengan pilihan untuk mengedit atau menghapus data yang ditampilkan tersebut. Keperluan edit dan delete yang dilakukan bisa terjadi dikarenakan adanya kesalahan data yang sudah terinput maupun disebabkan terjadi perubahan data dalam proses pekerjaan tersebut dan bilamana tidak dilakukan edit maupun delete akan mempengaruhi hasil akhir laporan yang dibuat.

Cara Membuat Tombol Edit Delete UserForm VBA Excel

Untuk membuat coding edit dan delete ini sebenarnya banyak cara yang bertebaran diluar sana, namun sesuai tujuan blog ini, tutorial ini disampaikan terutama untuk seorang pemula, yang tidak memilik basic di VBA Excel dan ingin mempelajari membuat aplikasi sederhana berbasis VBA Excel secara otodidak dengan lebih cepat dan mudah dipahami.

Animasi Edit dan Delete


Dari banyak cara yang ada, Admin berusaha memberikan coding makro yang lebih simple dengan bahasa yang mudah dipahami namun dapat diterapkan dimanapun, kapanpun dan berfungsi dengan baik. Kalian tinggal ikuti langkah-langkah berikut ini:

A. Menambahkan Coding Edit (Ubah) Data di UserForm

Disini Admin menganggap semua kalian sudah memahami cara menampilkan dan membuat Scope (ruang lingkup) objek dan prosedur di Code Window (jendela kode) UserForm VBA. Namun bagi yang belum memahami ataupun baru bergabung silahkan buka tutorial sebelumnya. Usahakan membaca dari awal karena materi tutorial ini dibagi dalam beberapa part yang saling berkaitan.

Kalian yang ingin melihat coding untuk Tombol Simpan Data ke dalam database worksheets buka kembali tutorial "Cara Membuat Tombol Simpan dan Coding Simpan Makro VBA Excel👀".

1. Selanjutnya langsung saja menuju UserForm1 lalu klik kanan CommandButton Edit (Ubah) pilih View Code atau langsung saja double klik.

2. Tambahkan/ganti kode makro tersebut dengan yang ada dibawah ini:

Private Sub Ubah_Click()
If Nama.Value = "" Then
MsgBox "Cari Atau Double Klik Data Yang Mau Diubah Bos-Qu !!!", vbInformation, "Pemberitahuan"
End If
Dim Baris As Integer
Set Ws = Worksheets("BelajarVBA").Range("A:A")
Set Cari = Ws.Find(KodeID, LookAt:=xlWhole)
If Not Cari Is Nothing Then
Baris = Cari.Row
If MsgBox("Apakah Bos-Qu Yakin Akan Mengubah Data Ini ?!!", vbYesNo + vbQuestion, "Pernyataan") = vbYes Then
Worksheets("BelajarVBA").Cells(Baris, 1) = KodeID
Worksheets("BelajarVBA").Cells(Baris, 2) = Nama.Value
Worksheets("BelajarVBA").Cells(Baris, 3) = Alamat.Value
Worksheets("BelajarVBA").Cells(Baris, 4) = Kecamatan.Value
Worksheets("BelajarVBA").Cells(Baris, 5) = Kelurahan.Value
Worksheets("BelajarVBA").Cells(Baris, 6) = Tanggal.Value
If OptLaki = True Then
Worksheets("BelajarVBA").Cells(Baris, 7) = "Laki-Laki"
ElseIf OptPerempuan = True Then
Worksheets("BelajarVBA").Cells(Baris, 7) = "Perempuan"
End If
Worksheets("BelajarVBA").Cells(Baris, 8).Value = CDbl(Modal.Value)
Tampil_ListBoxBelajar
MsgBox "Data Sudah Berhasil Diubah Bos-Qu", vbInformation, "Pemberitahuan"
End If
Bersihkan
Nama.SetFocus
End If
End Sub


Coding Edit

Penjelasan makro diatas adalah:

  • Private Sub Ubah_Click() dan End Sub. Sebuah scope prosedur dengan objek CommandButton Ubah dimana perintah berikutnya akan dijalankan bila tombol ubah kita klik.

  • If Nama.Value = "" Then dan MsgBox "Cari Atau Double Klik Data Yang Mau Diubah Bos-Qu !!!", vbInformation, "Pemberitahuan" lalu ditutup dengan End If. Sebuah perintah apabila data kolom Nama kosong akan menampilkan pesan bahwa tidak ada data yang perlu diubah.

  • Dim Baris As Integer. Pernyataan bahwa Objek baris yang dibuat merupakan variabel dalam bentuk tipe integer.

  • Set Ws = Worksheets("BelajarVBA").Range("A:A"). Menetapkan objek yang menjadi acuan pencarian data adalah database workshets sheet BelajarVBA Kolom A dimana kode ID tercatat disini.

  • Set Cari = Ws.Find(KodeID, LookAt:=xlWhole). Pencarian data dengan mencocokkan kode ID.

  • If Not Cari Is Nothing Then dan Baris = Cari.Row. Perintah bila data yang dicari ditemukan maka akan dieksekusi sesuai perintah berikutnya, yaitu mengubah data dan menyimpannya kembali sesuai tempat yang ditentukan dengan data terbaru yang telah mengalami perubahan.

  • If MsgBox("Apakah Bos-Qu Yakin Akan Mengubah Data Ini ?!!", vbYesNo + vbQuestion, "Pernyataan") = vbYes Then ditutup dengan End If. Sebuah makro pesan pertanyaan yang akan tampil sebelum data kita mengubah data.

  • Worksheets("BelajarVBA").Cells(Baris, 1) = KodeID sampai Worksheets("BelajarVBA").Cells(Baris, 8).Value = CDbl(Modal.Value). Merupakan perintah untuk menyimpan data pada tempat yang telah ditentukan.

  • MsgBox "Data Sudah Berhasil Diubah Bos-Qu", vbInformation, "Pemberitahuan". Pesan pemberitahuan apabila data telah tersimpan ke dalam database worksheets.

  • Bersihkan dan Nama.SetFocus. Perintah untuk mengosongkan kembali kolom form input, agar kita bisa memulai kembali penginputan selanjutnya atau melakukan proses pekerjaan lainnya.

B. Menambahkan Coding Delete (Hapus) Data di UserForm

1. Klik kanan CommandButton Delete (hapus) pilih View Code atau langsung saja double klik.

2. Tambahkan/ganti kode makro tersebut dengan yang ada dibawah ini:

Private Sub Hapus_Click()
If Nama.Value = "" Then
MsgBox "Cari Atau Double Klik Data Yang Mau Dihapus Bos-Qu !!!", vbInformation, "Pemberitahuan"
End If
Dim Baris As Integer
Set Ws = Worksheets("BelajarVBA").Range("A:A")
Set Cari = Ws.Find(KodeID, LookAt:=xlWhole)
If Not Cari Is Nothing Then
Baris = Cari.Row
If MsgBox("Apakah Bos-Qu Yakin Akan Menghapus Data Ini ?!!", vbYesNo + vbQuestion, "Pernyataan") = vbYes Then
Worksheets("BelajarVBA").Cells(Baris, 1).EntireRow.Delete
Tampil_ListBoxBelajar
MsgBox "Data Sudah Berhasil Dihapus Bos-Qu", vbInformation, "Pemberitahuan"
End If
Bersihkan
Nama.SetFocus
End If
End Sub

 

Coding Hapus


Penjelasan makro diatas adalah:

  • Private Sub Hapus_Click() ditutup dengan End Sub. Sebuah scope prosedur dengan objek CommandButton  Hapus dimana perintah berikutnya akan dijalankan bila tombol hapus kita klik.
  • If Nama.Value = "" Then dan MsgBox "Cari Atau Double Klik Data Yang Mau Dihapus Bos-Qu !!!", vbInformation, "Pemberitahuan" dan ditutup dengan End If. Sebuah perintah apabila data kolom Nama kosong akan menampilkan pesan bahwa tidak ada data yang dapat dihapus.

  • Dim Baris As Integer. Pernyataan bahwa Objek baris yang dibuat merupakan variabel dalam bentuk tipe integer.

  • Set Ws = Worksheets("BelajarVBA").Range("A:A"). Menetapkan objek yang menjadi acuan pencarian data adalah database workshets sheet BelajarVBA Kolom A dimana kode ID tercatat disini.

  • Set Cari = Ws.Find(KodeID, LookAt:=xlWhole). Pencarian data dengan mencocokkan kode ID.

  • If Not Cari Is Nothing Then dan Baris = Cari.Row. Perintah bila data yang dicari ditemukan maka akan dieksekusi sesuai perintah berikutnya, yaitu menghapus data yang terpilih.

  • If MsgBox("Apakah Bos-Qu Yakin Akan Menghapus Data Ini ?!!", vbYesNo + vbQuestion, "Pernyataan") = vbYes Then ditutup dengan End If. Sebuah makro pesan pertanyaan yang akan tampil sebelum data kita hapus, memungkinkan untuk meyakinkan kita dalam pilihan penghapusan data.

  • Worksheets("BelajarVBA").Cells(Baris, 1).EntireRow.Delete. Perintah menghapus data dari database sesuai data yang terpilih.

  • MsgBox "Data Sudah Berhasil Dihapus Bos-Qu", vbInformation, "Pemberitahuan". Pesan pemberitahuan apabila data telah terhapus dari database worksheets.

  • Bersihkan dan Nama.SetFocus. Perintah untuk mengosongkan kembali kolom form input, agar kita bisa memulai kembali penginputan selanjutnya atau melakukan proses pekerjaan lainnya.

 
Demikian tutorial menambahkan coding untuk tombol edit dan deleted pada UserForm VBA Excel. Silahkan berkunjung ke Channel Youtube Buttatoa untuk mendapatkan tutorial ini dalam bentuk video. Semoga postingan kali ini membawa manfaat, Wassalam.


Show Comments

1 comment for "Cara Membuat Tombol Edit Delete UserForm VBA Excel"