Diskusi tentang Excel

3 Cara Proteksi Worksheet dengan VBA/Macro

Salam Excel, masih tetap semangat belajar Ms. Excel? Semoga Anda masih tetap terus belajar dan mencari tahu mengenai ilmu-ilmu tentang excel. Kali ini saya akan coba membahas bagaimana cara memproteksi atau dalam istilah bahasa Indonesia "Mengunci" sebuah worksheet atau lembar kerja yang ada pada Ms. Excel Anda menggunakan Macro/VBA.

proteksi_worksheet_vba_macro
sumber gb. JowobotDotCom


Sebelum saya membahas langkah-demi langkah dari 3 cara proteksi worskheet menggunakan VBA terlebih dahulu saya akan sedikit mengulas apa seh sebenarnya proteksi itu? lalu apa tujuannya pula sehingga Anda mengharuskan melakukan proteksi? Secara umum dalam bahasa saya Proteksi merupakan langkah untuk melindungi suatu hal dari terjadinya hal-hal yang tidak dinginkan. Hal ini perlu Anda lakukan karena mengingat pentingnya sebuah data sebagai basis utama untuk mengolah sebuah informasi dan dalam hal ini data tersebut adalah data berupa file excel.

Ada beberapa tahapan proteksi pada Microsoft Excel dan ini sudah pernah saya bahas bagi yang masih belum mengetahuinya silakan simak di Cara Membuat Password Ms. Excel 
Apabila Anda memiliki sebuah lembar kerja (worksheet) yang memiliki rumus-rumus tertentu yang tidak ingin dirubah oleh orang yang tidak bertanggungjawab baik dari segi format atau lainnya tentu hal ini dianggap penting bagi Anda lalu bagaimana cara proteksi menggunakan VBA/Macro

Bagaimana Cara Proteksi Worksheet dengan VBA/Macro

Ada beberapa cara yang bisa dilakukan untuk mengunci/proteksi menggunakan macro ada cara standar ada juga yang lebih kompleks artinya cara standar ini bisa dilakukan hanya sebatas standar proteksi worksheet pada Ms. Excel.

Proteksi Worksheet Cara Standar
Proteksi worksheet dengan cara standar ini codingnya cukup simpel dan sederhana silakan lihat contoh coding dibawah ini :
Function ProtectSheet_SecaraDefault() 
    Worksheets("Sheet1").Protect 
End Function
Proteksi Worksheet dengan Password
Untuk proteksi worksheet menggunakan password atau kata kunci menggunakan VBA ini agak lebih keren dan apabila user akan merubah worksheet maka harus memasukan password terlebih dahulu agar bisa merubah format dan lainnya yang dibatasi. Berikut contoh coding VBA nya

Function ProtectSheetDenganPasswordt() 
    Worksheets("Sheet1").Protect  Password:="1234"
End Function
Anda bisa menambahkan password unprotect worksheet dengan kata kunci 1234

Proteksi Worksheet dengan Parameter Lengkap
Jenis proteksi ini jauh lebih hebat lagi dari cara pertama dan kedua diatas karena beberapa parameter kita bisa setting agar hal-hal yang seharusnya dikunci bisa kita atur sedemikian rupa. Berikut contoh coding.

Baca Juga :
Cara Membuat Password yang Sulit Ditebak di Microsoft Excel
Function ProtectSheetLebihLengkap() 
Worksheets("Sheet1").Protect _
Password:="1234", _
DrawingObjects:=False, _
Contents:=True, _
Scenarios:=True, _
UserInterfaceOnly:=True, _
AllowFormattingCells:=True, _
AllowFormattingColumns:=True, _
AllowFormattingRows:=True, _
AllowInsertingColumns:=True, _
AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=True, _
AllowDeletingColumns:=True, _
AllowDeletingRows:=True, _
AllowSorting:=False, _
AllowFiltering:=False, _
AllowUsingPivotTables:=False
End Function
Anda bisa merubah setting True atau False untuk membatasi sesuai dengan kondisi yang diinginkan silakan diuji coba

Dari ke-3 contoh proteksi worksheet diatas Anda bisa gunakan salah satu sesuai dengan keinginan jenis proteksi nya.

Sampai tahap ini Anda sudah bisa membuat coding proteksi worksheet menggunakan VBA, nah karena Anda sudah bisa membuatnya dan karena Anda telah membuatnya Anda harus bertanggungjawab untuk bisa membuat proteksi worksheet (unprotect) menggunakan VBA pula. Namun jangan khawatir saya juga akan sertakan bagaimana membuat coding untuk UnProtect dibawah ini:

Function BukaProtekWorksheet() 
    Worksheets("Sheet1").UnProtect ("1234")
End Function
Cukup sederhana coding untuk UnProtect tersebut namun apabila ingin lebih keren misalnya akan menambahkan pesan apabila password proteksi salah maka ada sedikit perubahan pada coding VBA / macro tersebut menjadi

Function UnProtectSheet() 
On Error GoTo JikaError
Worksheets("Sheet1").Unprotect ("vishwa123") 
JikaError: 
MsgBox JikaError.Number & " :  " & JikaError.Description 
End Function  
Jika ada kesalahan atau error maka akan muncul pesan error untuk menghandel password salah.

Demikian, semoga bermanfaat dan selamat mencoba

Related

Trik Excel 8827894702864004709

Post a Comment

Tulisan ini Bermanfaat..? Silakan berkomentar sesuai topik artikelnya, tidak dianjurkan menggunakan kata-kata yang dapat menimbulkan hal negatif. Mohon maaf apabila tidak memiliki etika akan Admin HAPUS tanpa pemberitahuan kembali. Terimakasih... salam Exceler

emo-but-icon

item