Anda dapat menggunakan statemen On Error GoTo untuk melacak error dan langsung meloncat ke lokasi statemen penanganan kesalahan di dalam procedure. Contohnya statemen berikut akan mengarahkan alur program ke label ErrorHandler
On Error GoTo ErrorHandler
Pastikan untuk memberi nama label yang uniq sehingga tidak terjadi konflik nama label dalam prosedur yang anda buat dan pastikan untuk memberi tanda titik dua pada nama label. Di dalam procedure tempatkan statemen Exit Sub atau Exit Function sebelum label error handler sehingga procedure tidak akan menjalankan statemen yang ada pada label penanganan ksalahan jika tidak terjadi error.
Sub CausesAnError() ' Direct procedure flow. On Error GoTo ErrorHandler ' Raise division by zero error. Err.Raise 11 MsgBox “Test Err” Exit Sub ErrorHandler: ' Display error information. MsgBox "Error number " & Err.Number & ": " & Err.Description ' Resume with statement following occurrence of error. Resume Next End Sub
Pada contoh script di atas statemen Err.raise 11 akan menghasilkan error pada script porgram sehingga alur program akan loncat ke label ErrorHandler: yang mana pada label ini akan ditampilkan Nomor Error dan Keterangan error. Setelah pesan kesalahan ditampilkan program akan dilanjutkan ke statemen MsgBox “Test Err” karena ada statemen Resume Next yang artinya jalankan statemen berikutnya setelah statemen di mana terjadi error.
No comments:
Post a Comment