Pernah Bingung Membaca Pesan Error?
Bayangkan ketika sedang menggunakan sebuah aplikasi Excel.
Tiba-tiba muncul pesan seperti berikut.
Run-time error '9'
Subscript out of range
Bagi seorang programmer, pesan tersebut mungkin sudah cukup membantu.
Namun, bagi pengguna biasa, pesan itu justru membingungkan.
Mereka tidak mengetahui:
-
Apa yang sebenarnya terjadi.
-
Mengapa error muncul.
-
Apa yang harus dilakukan selanjutnya.
Di sinilah pentingnya membuat pesan error yang informatif. Sebuah pesan error yang baik tidak hanya memberi tahu bahwa terjadi kesalahan, tetapi juga membantu pengguna memahami penyebabnya dan memberikan petunjuk untuk menyelesaikannya.
Mengapa Pesan Error Perlu Diubah?
Pesan bawaan VBA dibuat untuk membantu programmer saat proses pengembangan aplikasi.
Sementara itu, aplikasi yang digunakan oleh pengguna akhir sebaiknya menampilkan pesan yang lebih sederhana dan mudah dipahami.
Bandingkan kedua contoh berikut.
Pesan bawaan VBA
Run-time error '1004'
Pesan yang lebih ramah
Data tidak dapat diproses karena worksheet "Laporan" tidak ditemukan.
Pastikan nama worksheet sudah benar, kemudian coba kembali.
Contoh kedua memberikan informasi yang jauh lebih berguna bagi pengguna.
Ciri-Ciri Pesan Error yang Baik
Sebuah pesan error yang baik umumnya memiliki tiga unsur.
Apa yang Terjadi
↓
Mengapa Terjadi
↓
Apa yang Harus Dilakukan
Jika ketiga informasi tersebut tersedia, pengguna dapat mengambil tindakan tanpa harus menghubungi pembuat aplikasi.
Hindari Pesan yang Terlalu Singkat
Contoh yang kurang baik.
MsgBox "Error!"
atau
MsgBox "Terjadi Kesalahan."
Pesan seperti itu tidak menjelaskan apa pun selain bahwa program mengalami error.
Pengguna tetap tidak mengetahui penyebab maupun solusi yang harus dilakukan.
Berikan Informasi yang Jelas
Perhatikan contoh berikut.
MsgBox "Worksheet 'Data' tidak ditemukan." & vbCrLf & _
"Periksa kembali nama worksheet, lalu jalankan proses ini lagi."
Pesan tersebut memberi tahu:
-
Apa masalahnya.
-
Di mana masalah terjadi.
-
Langkah yang dapat dilakukan pengguna.
Memanfaatkan Informasi dari Objek Err
Pada artikel sebelumnya Anda telah mempelajari objek Err.
Informasi dari objek tersebut dapat digabungkan dengan pesan yang lebih mudah dipahami.
On Error GoTo ErrorHandler
'Kode utama
Exit Sub
ErrorHandler:
MsgBox "Proses gagal dijalankan." & vbCrLf & _
"Penyebab: " & Err.Description
Dengan pendekatan ini, pengguna memperoleh penjelasan yang lebih lengkap dibandingkan pesan bawaan VBA.
Gunakan Bahasa yang Mudah Dipahami
Sebisa mungkin hindari istilah teknis yang hanya dimengerti oleh programmer.
Kurang baik.
Object variable not set
Lebih baik.
Data tidak dapat diproses karena objek yang diperlukan belum tersedia.
Jika memungkinkan, jelaskan dengan bahasa yang sesuai dengan konteks aplikasi.
Berikan Solusi, Bukan Hanya Masalah
Pesan error yang baik tidak berhenti pada penjelasan penyebab.
Tambahkan saran sederhana.
Contoh.
File tidak ditemukan.
Silakan periksa kembali lokasi file atau pilih file yang benar.
Atau.
Data gagal disimpan.
Pastikan workbook tidak sedang dibuka dalam mode Read Only.
Pengguna akan lebih mudah menyelesaikan masalah tanpa perlu meminta bantuan.
Gunakan Ikon yang Sesuai
Fungsi MsgBox menyediakan beberapa jenis ikon.
Contoh:
MsgBox "Data berhasil disimpan.", vbInformation
MsgBox "File tidak ditemukan.", vbExclamation
MsgBox "Terjadi kesalahan yang tidak dapat diproses.", vbCritical
Pemilihan ikon membantu pengguna memahami tingkat pentingnya pesan yang ditampilkan.
Studi Kasus
Misalkan program membuka sebuah workbook.
Sub BukaFile()
On Error GoTo ErrorHandler
Workbooks.Open "D:\Data.xlsx"
MsgBox "Workbook berhasil dibuka."
Exit Sub
ErrorHandler:
MsgBox "Workbook tidak dapat dibuka." & vbCrLf & _
"Pastikan file masih berada di lokasi yang benar.", _
vbExclamation
End Sub
Program tidak hanya memberi tahu bahwa proses gagal, tetapi juga memberikan petunjuk mengenai kemungkinan penyebabnya.
Bandingkan Dua Pendekatan
| Kurang Informatif | Lebih Informatif |
|---|---|
| Terjadi Error | Data tidak dapat disimpan karena file sedang digunakan oleh aplikasi lain. |
| File Error | File yang dipilih tidak ditemukan. Periksa kembali lokasi file. |
| Invalid Data | Nilai yang dimasukkan tidak sesuai. Masukkan angka yang lebih besar dari nol. |
| Error 1004 | Worksheet Laporan tidak ditemukan. Pastikan nama worksheet sudah benar. |
Perbedaannya terlihat sederhana, tetapi sangat berpengaruh terhadap pengalaman pengguna.
Tips Menulis Pesan Error
✔ Jelaskan apa yang terjadi.
✔ Gunakan bahasa yang sederhana.
✔ Hindari istilah teknis jika tidak diperlukan.
✔ Berikan saran atau langkah berikutnya.
✔ Sesuaikan isi pesan dengan kondisi yang sebenarnya.
✔ Gunakan ikon MsgBox yang sesuai.
Kesalahan yang Sering Dilakukan
Menampilkan Pesan yang Sama untuk Semua Error
MsgBox "Terjadi Error."
Pengguna tidak mengetahui jenis kesalahan yang terjadi.
Menampilkan Informasi Teknis Secara Langsung
MsgBox Err.Description
Beberapa pesan bawaan VBA cukup sulit dipahami oleh pengguna umum.
Lebih baik gabungkan dengan penjelasan yang lebih sederhana.
Memberikan Informasi yang Tidak Sesuai
Misalnya menampilkan pesan:
Data berhasil disimpan.
Padahal proses penyimpanan sebenarnya gagal.
Pesan seperti ini dapat menyebabkan pengguna kehilangan data tanpa menyadarinya.
Praktik Terbaik
-
Gunakan
On Error GoTountuk menangkap Runtime Error. -
Manfaatkan objek
Errsebagai sumber informasi. -
Sesuaikan isi pesan dengan konteks aplikasi.
-
Berikan petunjuk yang dapat dilakukan pengguna.
-
Hindari membuat pengguna menebak penyebab masalah.
Ringkasan
| Hal yang Perlu Diperhatikan | Tujuan |
|---|---|
| Jelaskan penyebab error | Pengguna memahami masalah. |
| Gunakan bahasa sederhana | Mudah dipahami oleh semua pengguna. |
| Berikan solusi | Membantu pengguna mengambil tindakan. |
Gunakan Err.Description seperlunya |
Menambah informasi yang relevan. |
Pilih ikon MsgBox yang sesuai |
Memperjelas tingkat pentingnya pesan. |
Kesimpulan
Pesan error yang informatif merupakan bagian penting dari aplikasi VBA yang profesional. Daripada hanya menampilkan pesan bawaan atau kalimat yang terlalu umum, berikan informasi yang menjelaskan apa yang terjadi, mengapa hal tersebut terjadi, dan apa yang dapat dilakukan pengguna untuk mengatasinya. Dengan pendekatan ini, aplikasi menjadi lebih mudah digunakan, mengurangi kebingungan, serta meningkatkan kepercayaan pengguna terhadap sistem yang Anda bangun.
