maaf.. ada sedikit salah penjelasan.. belum dikasih warna hehehe.. kapan nilai -1 ini akan tercapai sedangkan nilainya terus bertambah? oleh sebab itu maka mr Kid menyeting nilai -1 ini hanya pada tombol cmdClick yang diberi warna biru. >> belum dikasih warna
nilai ini akan menjalankan program ke sini: ElseIf lTry = -1 Then Exit Sub >>> keluar dari program yang melarang user menutup wbk yang pada akhirnya user dapat menutup kembali workbook yang sebelumnya dibuka wassalam, -aji mumpung- Pada 11 Oktober 2012 08:37, aji mumpung <pupung1...@gmail.com> menulis: > Pak Toni, > > Mr Kid, mohon izin untuk ikut menjelaskan solusi atas kasus ini.. > > Berikut code dari Mr Kid > > ====================================================================== > Pada modul1 > > Option Explicit > > Public lTry As Long > ===================================================================== > > > ===================================================================== > Pada this workbook > > Option Explicit > > Private Sub Workbook_BeforeClose(Cancel As Boolean) > If lTry > 2 Then > Sheet1.cmdClose.Visible = True > ElseIf lTry = -1 Then > Exit Sub > Else > lTry = lTry + 1 > End If > Cancel = True > End Sub > > Private Sub Workbook_Open() > Sheet1.cmdClose = False > lTry = 0 > End Sub > > ================================================================================== > > > ================================================================================== > Pada sheet1 > > Option Explicit > > Private Sub cmdClose_Click() > lTry = -1 > Application.DisplayAlerts = False > cmdClose.Visible = False > ThisWorkbook.Save > ThisWorkbook.Close False > Application.DisplayAlerts = True > End Sub > > =============================================================================== > > Pada awalnya Mr Kid mendeklarasikan sebuah variabel bertipe long yang > dapat dipanggil dari mana saja dengan nama lTry > deklarasi variabel ini ditulis pada sebuah modul dan digunakan untuk > menyimpan berapa kali user mencoba menutup file excel dengan cara mengeklik > (bener gak ya bahasanya?) tombol silang di kanan atas atau dari menu File > >> Close > > Pada saat workbook dibuka (*ditandai dengan warna biru*), maka nilai lTry > ini disetting menjadi 0 (nol) > > Setiap kali user mencoba menutup workbook dengan cara menekan tombol > silang di kanan atas, maka nilai lTry ini akan selalu ditambahkan dengan > angka 1 > sehingga nilainya akan menjadi 0, 1, 2, 3, dst > > Lihat yang diberi *warna merah*, workbook hanya akan dapat ditutup > manakala lTry bernilai -1 (minus satu), sedangkan nilai awal adalah 0 > (nol),, nilai berikutnya adalah 1, 2, dan seterusnya.. > > kapan nilai -1 ini akan tercapai sedangkan nilainya terus bertambah? oleh > sebab itu maka mr Kid menyeting nilai -1 ini hanya pada tombol cmdClick > yang diberi warna biru. > > jadi sebanyak apa pun user mencoba menutup workbook, selama ybs tidak > menekan tombol tutup maka workbook tidak akan tertutup.. > > Tentunya cara ini hanya berhasil jika user memperbolehkan macro berjalan > di komputer mereka denga cara meng-Enable-kan macro tersebut, jika user > men-Disable maka code tersebut tidak akan berjalan. > > Solusi lain adalah memaksa user untuk meng-Enable-kan macro, jika mereka > tidak meng-enablekan maka mereka tidak dapat mengakses workbook tersebut. > > cara tersebut tentunya harus disusun ulang untuk melengkapi kode yang > sudah ditulis oleh mr Kid. > > Pendapat saya pribadi, kode dari Mr Kid selalu menakjubkan untuk dipelajari > > > wassalam, > > -aji mumpung- > > > Pada 11 Oktober 2012 07:27, Toni Kus indratno <tonny.k...@ymail.com>menulis: > > ** >> >> >> Tetap sama Pak,,belum bisa. . . . >> bisakah lebih rinci dijelaskan ke saya,? >> >> >> tonikus.staff.uad.ac.id >> >> >> > >