Iya Mr. Kid. Sepertinya memang begitu. Karena saya bikin label keluar dengan tambahan saya sendiri. Saya buat label Keluar dengan diakhiri on error goto 0. Kalau dilihat di code saya sebelumnya, tertulis : Keluar: Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True Application.DisplayAlerts = True Err.Clear On Error GoTo 0 ‘’====> Ini yang buat proses berikutnya jadi terhenti, dimana seharusnya jalan terus ke kode berikutnya. Saya rubah jadi resume next. ‘’====== Saya coba buat simulasi bikin error , dan kalau pakai resume next (bukan On error goto 0), proses berjalan terus ke kode berikutnya. Terima kasih Mr. Kid. Saya kabari lagi setelah saya coba ke kondisi yang sesungguhnya.
From: belajar-excel@yahoogroups.com [mailto:belajar-excel@yahoogroups.com] Sent: 18 Maret 2019 5:38 To: BeExcel Subject: Re: [belajar-excel] Cara penulisan error handling Coba semua baris On error di-off-kan dulu, lalu coba file untuk buka berbagai kondisi file data (coba saat sudah dibuka user lain, coba saat tidak ada yang buka, coba saat dibuka sendiri, dsb), lalu perhatikan error yang terjadi dan karena apa. Kalau sudah tahu karena apa, butuh pesan atau tidak. Yang butuh pesan, on error nya goto mylabel Yang gak butuh pesan, on error nya goto keluar Baris kode yang ada itu sekilas saja sudah tampak bahwa sumber error-nya bisa jadi di baris-baris kode yang Anda tulis dengan 'code lain itu, karena disana bisa jadi ada baris on error yang bikin masalah. Karena on error goto Keluar di paling atas sudah menghandle error akibat Anda mengactivate workbook yang belum terbuka (misal user gak mau mencoba membuka ulang setelah sekian ratus kali gak berhasil buka). Baris error setelah baris itu pun (misal ketika sudah berhasil buka workbook, akan di-handle oleh on error goto keluar (langsung ke label keluar) Jadi baris yang dikatakan selalu terjadi error di baris itu, sebenarnya tidak pernah terjadi kalau tidak ada bagian baris kode 'code lain Anda itu. Dan nggak perlu repot-repot bikin on orror baru. Pertanyaannya kan, 'Kenapa bisa begitu ?' > karena Anda memakai error handler secara serampangan, dengan tidak > menganalisa setiap kemungkinan error yang muncul dari setiap (SETIAP loh ya) > baris yang ada itu apa saja dan sudahkah dihandle oleh error handler sebelum > baris itu. Jadi, di-troubleshoot pun akan sulit karena sama saja Anda harus menjelaskan secara rinci tugas setiap baris kode yang dibuat. Regards, Kid On Sun, Mar 17, 2019 at 7:37 PM Tio Adi Bayu Adjie tio.ad...@ptssb.co.id<mailto:tio.ad...@ptssb.co.id> [belajar-excel] <belajar-excel@yahoogroups.com<mailto:belajar-excel@yahoogroups.com>> wrote: Ok. Berarti sudah benar ya cara penulisan saya untuk nangkap nomor errornya ? yaitu label Mylabel dulu baru label Keluar ? Soalnya ini saya sudah coba sebelumnya dan tidak bisa nangkap nomor errornya. Maksud saya, kalau sudah benar cara penulisannya, berarti errornya bukan disitu. Makanya saya butuh kepastian cara penulisannya. Terima kasih atas jawabannya. Tio From: belajar-excel@yahoogroups.com<mailto:belajar-ex...@yahoogroups..com> [mailto:belajar-excel@yahoogroups.com<mailto:belajar-excel@yahoogroups.com>] Sent: 17 Maret 2019 12:39 To: belajar-excel@yahoogroups.com<mailto:belajar-excel@yahoogroups.com> Subject: Re: [belajar-excel] Cara penulisan error handling Coba saja... Yang penting itu, sebelum pasang error handler (trap error), sudah tahu setiap baris program bisa error ketika apa saja. Contoh : baris program buka file akan error kalau file yang mau dibuka tidak ada. Jadi butuh baris program validasi jika memungkinkan. Kalau susah bikin validasi, bisa jadi error handler mampu membantu. Barulah baris program buka file. Sent from my smart enough phone On Mar 17, 2019, at 02:19, Tio Adi Bayu Adjie tio.ad...@ptssb.co.id<mailto:tio.ad...@ptssb.co.id> [belajar-excel] <belajar-excel@yahoogroups.com<mailto:belajar-excel@yahoogroups.com>> wrote: Salam Be-Exceller. Ini melanjutkan topik tentang cek file di server. Kalau ada kasus VBA seperti ini : Private sub ContohKodeSaya() Dim Alamatfile as string Dim Mywb as workbook,Wbbaru as workbook Dim wbbaruSh as worksheet,MywbSh as worksheet On error goto Keluar Alamatfile=”D:\\myfolder\mysubfolder\namafilesaya.xlsx” ‘’‘Buka file dari server BukaFile Alamatfile,"PasswordSaya" Set Mywb=ThisWorkbook Set Wbbaru=workbooks(“namafilesaya.xlsx”) Wbbaru.activate Set WbbaruSh=Wbbaru.worksheets(“mySheet”) With WbbaruSh .Cells(1,1).value=”XXX” ‘’‘Code lain…..…. End with Mywb.activate Set MywbSh=Mywb.worksheets(“mySheetJuga”) With MywbSh .Cells(1,1).value=”YYY” ‘’‘Code lain… End with Wbbaru.close true ---------------> Saya selalu error disini. Set mywb=nothing Set wbbaru=nothing Set wbbaruSh=nothing Set MywbSh=nothing Keluar: Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True Application.DisplayAlerts = True Err.Clear On Error GoTo 0 End sub Pertanyaannya : Karena baris Wbbaru.close true selalu error, maka saya mau menangkap nomor Error nya sehingga bisa dihandle. Bagaimana cara penulisannya kalau dengan kondisi diatas (multiple error handling). Apakah yang benar seperti ini ?(Yaitu dengan 2 error handling, Mylabel dan Keluar) Private sub ContohKodeSaya() Dim Alamatfile as string Dim Mywb as workbook,Wbbaru as workbook Dim wbbaruSh as worksheet,MywbSh as worksheet On error goto Keluar Alamatfile=”D:\\myfolder\mysubfolder\namafilesaya.xlsx” ‘’‘Buka file dari server BukaFile Alamatfile,"PasswordSaya" Set Mywb=ThisWorkbook Set Wbbaru=workbooks(“namafilesaya.xlsx”) Wbbaru.activate Set WbbaruSh=Wbbaru.worksheets(“mySheet”) With WbbaruSh .Cells(1,1).value=”XXX” ‘’‘Code lain…..…. End with Mywb.activate Set MywbSh=Mywb.worksheets(“mySheetJuga”) With MywbSh .Cells(1,1).value=”YYY” ‘’‘Code lain… End with On error goto Mylabel Wbbaru.close true Set mywb=nothing Set wbbaru=nothing Set wbbaruSh=nothing Set MywbSh=nothing Exit sub Mylabel: Msgbox “Nomor Errornya :” & Err.number &” dengan deskripsi error sbb : “ & Err.description Keluar: Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True Application.DisplayAlerts = True Err.Clear On Error GoTo 0 End sub Terima kasih atas bimbingannya semoga amal baiknya diterima disisiNya. Amiin. Tio