Az Excel lehetővé teszi, hogy megvédje Excel -munkafüzeteit a változásoktól. Ez az oktatóanyag megmutatja, hogyan védheti meg vagy távolíthatja el a munkafüzet szerkezetét a VBA használatával.
VBA munkafüzetvédelem
A VBA Workbook Protection lehetővé teszi a munkafüzet szerkezetének zárolását. Ha a munkafüzet védett, a felhasználók nem tudnak munkalapokat hozzáadni, törölni, elrejteni / elrejteni vagy védeni / védelmet eltávolítani. Ha modellt épít, valószínűleg be szeretné kapcsolni a munkafüzet -védelmet, hogy a felhasználók (vagy Ön!) Ne véletlenül törölhessék a munkalapokat.
Védelmetlen munkafüzet VBA
A munkafüzet védelmének feloldásához egyszerűen használja a következő kódsort:
1 | Munkafüzetek ("Könyv1"). Védelem feloldása |
Megjegyzés: ez a kód csak akkor működik, ha a munkafüzet védett nélkül egy jelszót. Ha jelszóval védett, akkor azt is be kell írnia a védelem megszüntetéséhez:
Védje meg a munkafüzetet jelszóval
Ez a kódsor feloldja a jelszóval védett munkafüzet védelmét:
1 | Munkafüzetek ("Könyv1"). Jelszó védelmének feloldása: = "jelszó" |
vagy törölheti a jelszót: =
1 | Munkafüzetek ("1. könyv"). A "jelszó" védelmének feloldása |
Védje meg ezt a munkafüzetet
Ez a kód feloldja a ThisWorkbook védelmét (Ez a munkakönyv az a munkafüzet, amelyben a futó kód tárolódik. Ez soha nem fog változni).
1 | Ez a munkakönyv. Védelem |
vagy távolítsa el a ThisWorkbook védelmét jelszóval:
1 | ThisWorkbook.Unprotect "password" |
Az ActiveWorkbook védelme
Ez a kód megszünteti az ActiveWorbook védelmét.
1 | ActiveWorkbook.Védelmetlen |
vagy szüntesse meg az ActiveWorkbook védelmét jelszóval:
1 | ActiveWorkbook.Védje fel a "jelszó" védelmét |
Védje fel az összes nyitott munkafüzetet
Ez a kód feloldja az összes nyitott munkafüzet védelmét:
12345678 | Sub UnprotectAllOpenWorkbooks ()Dim wb Mint munkafüzetMinden wb -hez a munkafüzetekbenwb. VédelemKövetkező wbEnd Sub |
Védelmetlen munkafüzet - jelszó ismerete nélkül
Ha a jelszó ismerete nélkül fel kell oldania a munkafüzet védelmét, számos bővítmény segíthet. Ajánlom a szalagparancsnokot.
A munkafüzet összes lapjának védelmének megszüntetése
A munkafüzet védelmének feloldása után érdemes feloldani a munkafüzet összes lapjának védelmét is. Íme egy eljárás, amely megszünteti az összes lap védelmét:
12345678 | Sub UnProtectWorkbookAndAllSheets ()Dim ws munkalapkéntActiveWorkbook.VédelmetlenMinden egyes munkalaphozws. VédelemKövetkezőEnd Sub |
Védje a munkafüzetet
A munkafüzet szerkezeteit ugyanúgy védheti, mint a védelmet.
A munkafüzet védelme Nincs jelszó
Ez a kódsor megvédi a munkafüzetet (nincs jelszó)
1 | Munkafüzetek ("1. könyv") |
Megjegyzés: Gyakran alkalmazom a munkafüzet védelmét jelszavak nélkül, egyszerűen a megelőzés érdekében véletlen változások a munkafüzetekben.
Védje a munkafüzetet jelszóval
Ez a kód megvédi a munkafüzet szerkezetét (jelszóval)
1 | Munkafüzetek ("Könyv1"). Védje a "jelszót" |
vagy:
1 | Munkafüzetek ("Könyv1"). Jelszó védelme: = "jelszó" |
Jelszóval védett Excel fájl
A munkafüzet védelme helyett érdemes lehet egy teljes Excel fájlt jelszóval védeni. Ehhez a VBA használatával mentse a munkafüzetet jelszóval:
1 | Munkafüzetek ("Könyv1"). Mentés másként "jelszó" |
Példák a munkafüzet védelmére / védelmének megszüntetésére
Az összes munkalap megjelenítése a védett munkafüzetben
Ez az eljárás feloldja a munkafüzet védelmét, elrejti az összes munkalapot, és újra védi a munkafüzetet
12345678910 | Alvédelmi feloldásWB_Unhide_All_Sheets ()Dim ws munkalapkéntActiveWorkbook.VédelmetlenMinden egyes munkalaphozws.Visible = xlSheetVisibleKövetkezőActiveWorkbook.VédelemEnd Sub |
Védje a munkafüzetet és minden lapot
Ez az eljárás megvédi a munkafüzet összes munkalapját, majd a munkafüzetet:
1234567891011 | Sub ProtectWB_Protect_All_Sheets ()Dim ws munkalapkéntActiveWorkbook.VédelmetlenMinden egyes munkalaphozws. VédelemKövetkezőActiveWorkbook.VédelemEnd Sub |
Jelszavas védelmet is hozzáadhat:
1234567891011 | Sub ProtectWB_Protect_All_Sheets_Pswrd ()Dim ws munkalapkéntActiveWorkbook.Védje fel a "jelszó" védelmétMinden egyes munkalaphozws.Védje a "jelszót"KövetkezőActiveWorkbook.Protect "jelszó"End Sub |