Private Sub RUBAH_Click()
On Error GoTo Salah
If Me.NAMA.Value = "" Then
Call MsgBox("Pilih data yang mau diubah", vbInformation, "Data Surat")
Else
Set UbahSurat = Sheet2.Range("A2:A2000").Find(What:=Me.NAMA.Value, LookIn:=xlValues)
UbahSurat.Offset(0, 0).Value = Me.NAMA.Value
UbahSurat.Offset(0, 1).Value = Me.NIM.Value
UbahSurat.Offset(0, 2).Value = Me.FAKULTAS.Value
UbahSurat.Offset(0, 3).Value = Me.JURUSAN.Value
UbahSurat.Offset(0, 4).Value = Me.HILANG.Value
UbahSurat.Offset(0, 5).Value = Me.RUSAK.Value
Call MsgBox("Data Surat telah diubah", vbInformation, "Data Surat")
Me.NAMA.Value = ""
Me.NIM.Value = ""
Me.FAKULTAS.Value = ""
Me.JURUSAN.Value = ""
Me.HILANG.Value = ""
Me.RUSAK.Value = ""
End If
Exit Sub
Salah:
Call MsgBox("Ubah surat selain pada nomor surat", vbInformation, "Data Surat")
End Sub
Tujuan Utama Prosedur RUBAH_Click
Memperbarui data mahasiswa (nama, NIM, fakultas, jurusan, status kehilangan dan kerusakan surat) di Sheet2, berdasarkan nama yang dicari lewat form.
🧩 Penjelasan Langkah per Langkah
| Baris Kode | Fungsi |
|---|---|
Private Sub RUBAH_Click() | Menandai bahwa ini adalah event ketika tombol "RUBAH" diklik di form. |
On Error GoTo Salah | Jika terjadi kesalahan, alur program loncat ke bagian label Salah:. |
If Me.NAMA.Value = "" Then | Mengecek apakah user telah memilih/mengetik nama. Kalau belum, munculkan pesan peringatan. |
Call MsgBox(...) | Menampilkan pesan bahwa data belum dipilih. |
Set UbahSurat = Sheet2.Range("A2:A2000").Find(...) | Mencari nama di range A2:A2000 pada Sheet2. Jika ditemukan, UbahSurat akan menunjuk ke sel tersebut. |
UbahSurat.Offset(x, y).Value = Me.[Field].Value | Mengubah data di baris tersebut untuk kolom yang sesuai (NIM, Fakultas, Jurusan, dll). |
Call MsgBox("Data Surat telah diubah",...) | Konfirmasi bahwa data berhasil diubah. |
Me.[Field].Value = "" | Mengosongkan kembali field di form agar siap untuk input baru. |
Exit Sub | Mengakhiri prosedur normal, supaya tidak masuk ke bagian Salah:. |
Salah: | Label bagian error. Kalau nama tidak ditemukan atau ada error lain, munculkan pesan kesalahan. |
📌 Kegunaan Praktis
Cocok untuk sistem pengelolaan surat kehilangan/rusak bagi mahasiswa.
Memudahkan pengeditan data tanpa harus langsung buka Sheet Excel manual.
Menjaga alur kerja tetap interaktif dan user-friendly lewat form.