walaikum salam wr wb

ini yang saya cari pak agus..
ijin rubah sheet nya pak.
soalnya bisanya sebatas edit2 sama rekam aja.


salam
lb

Pada Kamis, 22 Mei 2014 8:43, "nangAgus nangag...@yahoo.co.id [belajar-excel]" 
<belajar-excel@yahoogroups.com> menulis:
 


  


Asalamualaikum warah matullah,

Untuk semua member B-Excel, 
Setelah belajar VBA di Kopdar 2# jadi semangat untuk belajar
      menulis script sendiri.
Kali ini saya belajar membuat file yang dapat memaksa penggunanya
      untuk mengaktifkan macro. 
Karena kita tidak dapat memaksa microsoft excel untuk selalu
      mengahidupkan macro maka saya buat sedikit trik agar file yang
      saya berikan selalu macronya dienable, ayo langsung ke TKP!

Saya siapkan dua sheet, sheet pertama yang isinya peringatan bahwa
      macro belum dihidupkan dan diberikan cara mengaktifkan macro.
sedangkan sheet kedua berisi sheet yang akan dimunculkan jika
      macro sudah dijalankan. jika perlu tambahkan bumbu-bumbu cabe,
      bawang, CustomUI dll. agar menjadi lebih sedap dan nikmat, tetapi
      jangan terlalu banyak MSG yaaa, he he he ....

Maksudnya:
1. Apabila komputer pengguna belum mengaktifkan macro, maka akan
      muncul sheet 1 yang berisi tentang cara mengaktifkan macro,
      sedangkan sheet lainnya disembunyikan. ini berarti, karena yang
      nampak hanya sheet 1 maka user tidak dapat menggunakan file yang
      kita berikan. untuk menggunakannya user harus menghidupkan
      (enable) makro.

2. agar file selalu membuka sheet1 apabila macro tidak dijalankan
      saya gunakan obyek Workbook dengan prosedur BeforeClose. (mohon maaf 
kadang saya tidak dapat membedakan event dan prosedur karena ketidak tahuan 
saya; padahal pak Anton sudah menjelaskan secara panjang lebar. jika keliru 
tolong saya diingatkan!) Perintahnya: "Workbook, tulung inyong kantonake sheet 
1 sakdurunge di tutup, sheet liyane delikna disik, yen file durung disimpen, 
simpen disik yaa"
    Ini berarti saat terakhir disimpan yang tampak hanya sheet 1.
      apabila  file tersebut saya buka, yang nampak hanya sheet 1.

3. Setelah selesai bahasa manusia, kita tuliskan menjadi bahasa VB 
(kelihatannya seperti itu yak Mr. Kid).
        Private Sub Workbook_BeforeClose(Cancel As Boolean)              
'memerintah excel dengan prosedur sebelum ditutup
        Sheet1.Visible = xlSheetVisible                                         
                   ' sheet1 jangan disembunyikan (perlihatkan sheet 1)
        Sheet2.Visible = xlSheetHidden                                          
                     ' sheet2 disembunyikan
       Sheet3.Visible = xlSheetHidden                                           
                ' sheet3 disembunyikan
            Me.Save                                                             
                                                     ' menyimpan file
        End Sub

Kelar sudah untuk memperlihatkan bagi yang belum mengenable macro,
      sekarang saatnya ambil kopi, mau yang pakai susu apa cream? jangan
      lupa ambil makanan kecil tetapi makanan yang besar juga boleh.... 
      untuk yang ahli hisab seperti Mr. Kid sediakan pula 10 bungkus
      rokok ......... hi hi hi ...

Jika macro sudah di-enable :
1. Setelah macro dijalankan yang tampak hanya sheet 2 kita gunakan
      obyek Workbook dengan prosedur Open.
2. Workbook tulung sheet 1 delikna, sheet 2 ketokna, sheet liyane
      aja katon!
3. Kita ubah menjadi bahasa VB:

Private Sub Workbook_Open()                'memerintahexcel dengan prosedur 
saat dibuka
Sheet2.Visible = xlSheetVisible            'memperlihatkan sheet 2
Sheet3.Visible = xlSheetHidden             'menyembunyikan sheet 3
Sheet1.Visible = xlSheetHidden             'menyembunyikan sheet1         
UserForm1.Show                             'memperlihatkan UserForm1       
End Sub

selesai sudah pekerjaan memaksa user untuk mengenable macro. 
nama: jeneng
password : password

Namun apabila saat berada di sheet2 file excel tersebut rusak,
      terus recovery maka sesudah recovery pertama kali yang nampak
      adalah sheet 2 bukan sheet 1, walaupun macro belum dienable. ini
      yang belum dapat saya antisipasi. bagaimanakah caranya?
Tolong rekan-rekan B-Excel dapat membantu

Terima kasih, matur nuwun, tengyu, sukron, 

asalamualaikumwarahmatullah

NangAgus.





Kirim email ke