ada yang kelupaan. event afterrefresh seperti ini juga bisa di letakkan pada sebuah class module, tapi sepertinya status refresh dan waktu refresh sebaiknya diletakkan disebuah log_sheet yang berisi tabel dengan kolom-kolom bernama nama_sheet, waktu_refresh, status_refresh. Dengan begitu, penulisan proses log bisa dilakukan dengan tetap disuatu tempat.
Wassalamu'alaikum Wr. Wb. Kid. 2013/3/9 Mr. Kid <[email protected]> > Hai Heru, > > Dengan asumsi bahwa setiap sheet Excel adalah sebuah tabel (agar lebih > berkaidah database), maka jumlah query table dalam setiap sheet adalah 1 > bijik. > > Object query table memiliki 2 event, yaitu beforerefresh dan afterrefresh > Pada object worksheet yang berisi query table tersebut bisa diberi script > berikut : > 1. deklarasi variabel query table dengan scope private yang disertai > pernyataan memiliki events > private withevents qtKu as querytable > > 2. prosedur dengan scope public untuk inisialisasi object querytable dalam > worksheet ke variabel qtKu (dideklarasikan di nomor 1) > ** misal nama object worksheet dalam VBE [VB Project Explorer] yang > berisi query table adalah mySheet, dengan caption (nama di sheet tab) > adalah Query1 *** > public sub SetQT() > 'Jika query table diletakkan sebagai object Excel table (atau > bernama ListObjects), maka gunakan : > 'set qtKu = mySheet.listobjects(1).querytable > > 'jika query table tidak tinggal dalam object listobjects : > set qtku=mysheet.querytables(1) > end sub > > 3. prosedur event (scope pasti private) milik query table (misal event > AfterRefresh, untuk variabel qtKu > -> lihat combobox kiri di atas lembar script, pilih qtKu > -> lihat combobox kanan di atas lembar script, pilih AfterRefresh > -> isi blok prosedur event yang dibuatkan oleh VBA dengan script yang > dibutuhkan > misal : > *** saat selesai refresh (baik karena gagal atau berhasil), akan > ditulis waktu refresh dan status refresh di sebuah range diluar tabel > *** waktu refresh akan ditulis di range F1 yang pasti diluar area > query table > *** status refresh akan ditulis di range G1 > >> penulisan status seperti ini tidak akan mengganggu user yang sedang > sibuk mengamati tabel yang di-refresh, sedang msgbox akan mengganggu fokus > user > *** bunyi script yang ditulis dalam blok prosedur event afterrefresh > tersebut adalah : > mysheet.range("f1").value=now > if success then > mysheet.range("g1").value ="Horeee... refresh-nya sukses" > else > mysheet.range("g1").value =":( hikhikhik... refresh-nya > gagal" > endif > > 4. Melakukan inisialisasi object query table disheet tersebut > *** misal dilakukan pada event workbook open (bisa di event worksheet > activate) *** > -> isi event workbook open dengan baris yang memanggil prosedur (scope > public) milik worksheet (private object) berupa : (nama object sheet adalah > mySheet) > mysheet.setqt > > Wassalamu'alaikum Wr. Wb. > Kid. > > > > 2013/3/9 Heru Safrudin <[email protected]> > >> Dear Master, >> >> >> Saya bikin query di excel dari external data access >> Saya suda set option Refresh every 30 minutes >> Udah jalan sih interval 30 menit pasti refresh, tapi kita gak tau kalo >> data telah terupdate >> >> Pertanyaanya adakah event prosedur yg bisa memberikan pesan ada update >> ketika query refresh dan data telah terupdate ? (seperti Msgbox ) ? >> >> -- >> Terima kasih >> >> وَالسَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ >> Heru Safrudin >> >> >> ------------------------------------ >> >> --------------------------------------------------------------------- >> bergabung ke milis (subscribe), kirim mail kosong ke: >> [email protected] >> >> posting ke milis, kirimkan ke: >> [email protected] >> >> berkunjung ke web milis >> http://tech.groups.yahoo.com/group/belajar-excel/messages >> >> melihat file archive / mendownload lampiran >> http://www.mail-archive.com/[email protected]/ >> atau (sejak 25-Apr-2011) bisa juga di : >> http://milis-belajar-excel.1048464.n5.nabble.com/ >> >> menghubungi moderators & owners: [email protected] >> >> keluar dari membership milis (UnSubscribe): >> kirim mail kosong ke [email protected] >> ---------------------------------------------------------------------Yahoo! >> Groups Links >> >> >> >> >

