Secara bawaaan (default) Microsoft excel menonaktifkan macro
untuk keamanan. Kita tidak dapat memaksa Microsoft untuk menjalankan macro saat
membuka file excel yang ada macronya, demikian pula dengan penggunanya tidak
dapat selalu menghidupkan macro saat membuka file. Agar file yang kita berikan
selalu dihidupkan macronya saat dibuka, ikuti trik berikut ini:
Untuk mengawali suatu penulisan visual basic sebaiknya kita
selalu mengawali dengan bahasa manusia agar lebih mudah memahami apa yang akan
kita lakukan.
Agar file yang diberikan selalu dijalankan macronya kita
buat trik dengan cara: selalu sheet1 yang berisi peringatan bahwa macro belum
dijalankan akan terbuka apabila macro belum dijalankan, dan sheet2 yang terbuka
apabila macro sudah di jalankan. Jadi user tidak dapat menggunakan file jika
belum menjalankan macro tetapi hanya mendapatkan peringatan bahwa macro belum
dijalankan.
Agar sheet1 terbuka saat macro belum dijalankan, saat sebelum
di tututup (before close) semua sheet disembunyikan dan sheet1 saja yang
nampak.
Sheet2 nampak abaila macro sudah dihidupkan, kita tulis
dalam procedure Worksheet Open
Persiapan
Kita mulai dengan membuat 2 sheet yang diperlukan, sheet1 berisi peringatan agar menghidupkan macro
Sheet 2 berisi program yang akan berjalan jika macro
dihidupkan.
Penulisan Macro
Bukalah VBA editor dengan menkan Alt+11.
Pilih Object Workbook dan Prosedur Before Close:
Ketiklah kode berikut ini:
Sheet1.Visible =
xlSheetVisible ‘perlihatkan
sheet1
Sheet2.Visible =
xlSheetVeryHidden ‘sembunyikan
sheet2
Sheet3.Visible =
xlSheetVeryHidden
Pada prosedur Workbook_open tulislah kode berikut:
Sheet2.Visible =
xlSheetVisible ‘perlihatkan
sheet2
Sheet1.Visible =
xlSheetVeryHidden ‘sembunyikan
sheet1
Sheet3.Visible =
xlSheetVeryHidden
Kode selengkapnya seperti gambar di bawah ini!
Simpanlah file dalam type *.xlsm
mas mau tanya ni, gemana buat setiap kali kita buka file excel maka yang muncul misalnya selalu sheet-1, agar mempermudah kita dalam membuat menu navigasi, trimakasih bisa contak email ana di yuganime@gmail.com
BalasHapusPada contoh, pada saat file terbuka hanya sheet 1 yang tampak sebelum macro di-enable. dan hanya sheet 2 yang tampak setelah macro di-enable. Coba download Contoh Filenya
HapusTerimakasih ide "bahasa manusia" nya mas. Selama ini sy tidak kepikiran untuk membuat info peringatan klw macro blm dijalankan. Artikel ini sangat bermanfaat, sy kasih G+ lah...he..he..he.. Thks
BalasHapusmas mau nanya boleh ya, saya sudah buat perintah di VBA sepeti dibawah ini, tapi yang aktif cuma perintah pertama saja (mengaktifkan secara paksa macronya) tapi perintah expired datenya ga bisa jalan, sebaliknya jika perintah (mengaktifkan secara paksa macronya)saya cabut/hapus maka expired datenya aktif.
BalasHapuspertanyaannya gimana caranya agar ke2 peritah tersebut bisa aktif didalam satu workbook.?
mohon pencerahannya.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheet3.Visible = xlSheetVisible
Sheet2.Visible = xlSheetVeryHidden
Sheet7.Visible = xlSheetVeryHidden
Sheet4.Visible = xlSheetVeryHidden
End Sub
Private Sub Workbook_Open()
Sheet3.Visible = xlSheetVeryHidden
Sheet2.Visible = xlSheetVisible
Sheet7.Visible = xlSheetVisible
Sheet4.Visible = xlSheetVisible
End Sub
Dim expiry As Date
expiry = "25/12/2016"
If Date > expiry Then
MsgBox "File has expired, please contack admin to get the latest version", vbInformation, "Close"
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.Quit
Else
MsgBox "You have" & expiry - Date & " Day(s) left", vbInformation, "Data expiry on " & expiry
End sub
selamat malam, mau tanya kenapa ada laptop yang tidak bisa membuka macro vba saya padahal sama office 2013 dan sudah di enable macro nya. cuma pada saat membuka file nya gak muncul scurity option
BalasHapusnice informasinya... senang bisa berkunjung di blognya
BalasHapusOplosan Essen
mas mw tanya, aplikasi yang sy gunakan tdak bsa digunakan krna ada tulisan "excel found unreadable content". mohon bimbingan dan solusinya!!! terima kasih
BalasHapusIdenya boleh juga, dengan begini user pasti akan memilih mengaktifkan macro untuk lanjut... Sip...
BalasHapus