使用像复选框这样的触发器我想保护我的工作簿。我试过Excel 2003:如何使用VBA保护Excel工作簿?
thisworkbook.protect("password",true,true)
thisworkbook.unprotect("password")
它不工作。有什么建议么?
使用像复选框这样的触发器我想保护我的工作簿。我试过Excel 2003:如何使用VBA保护Excel工作簿?
thisworkbook.protect("password",true,true)
thisworkbook.unprotect("password")
它不工作。有什么建议么?
我同意@理查德摩根...你在做什么应该工作,所以可能需要更多的信息。
微软对options to protect your Excel 2003 worksheets有一些建议。
这里是一个小的详细信息...
从帮助文件(保护法):
expression.Protect(Password, Structure, Windows)
表达必需。一个返回Workbook对象的表达式。
Password可选变体。为工作表或工作簿指定区分大小写的密码的字符串。如果省略此参数,则可以在不使用密码的情况下解除工作表或工作簿的保护。否则,您必须指定密码才能解除工作表或工作簿的保护。如果忘记密码,则无法取消保护工作表或工作簿。将密码及其相应文档名称列在安全的地方是个好主意。
结构可选变体。正确以保护工作簿的结构(工作表的相对位置)。默认值是False。
Windows可选变体。正确以保护工作簿窗口。如果省略该参数,则窗口不受保护。
ActiveWorkbook.Protect Password:="password", Structure:=True, Windows:=True
如果你想在工作层面的工作,我同样年前用过的东西,当我需要保护/取消保护:
Sub ProtectSheet()
ActiveSheet.Protect "password", True, True
End Sub
Sub UnProtectSheet()
ActiveSheet.Unprotect "password"
End Sub
Sub protectAll()
Dim myCount
Dim i
myCount = Application.Sheets.Count
Sheets(1).Select
For i = 1 To myCount
ActiveSheet.Protect "password", true, true
If i = myCount Then
End
End If
ActiveSheet.Next.Select
Next i
End Sub
在你的示例代码,你必须卸下支架,因为它不是功能性的任务;也为纪录片原因我建议您使用:=
符号(见下面的示例代码)
Application.Thisworkbook
是指含有VBA代码的书,不一定包含数据的书,因此要小心。快递你工作作为表对象的片,用逻辑变量传递,汇集到下面的子:
Sub SetProtectionMode(MySheet As Worksheet, ProtectionMode As Boolean)
If ProtectionMode Then
MySheet.Protect DrawingObjects:=True, Contents:=True, _
AllowSorting:=True, AllowFiltering:=True
Else
MySheet.Unprotect
End If
End Sub
内.Protect
方法,你可以定义哪些你想允许/禁止。此代码块将开启/关闭保护 - 在本例中没有密码,您可以将其添加为参数或硬编码在Sub中。无论如何,PW将被硬编码。如果你不希望这样,只需调用保护对话框窗口,让用户决定做什么:
Application.Dialogs(xlDialogProtectDocument).Show
希望帮助
祝你好运 - 拾音
要锁定从整个工作簿在VBA中可以使用Thisworkbook.password
选项。
如果要保护工作表,则必须先使用选项Thisworkbook.sheets.cells.locked = True
锁定单元格,然后使用选项Thisworkbook.sheets.protect password:="pwd"
。
主要搜索这些关键字:Thisworkbook.password
或Thisworkbook.Sheets.Cells.Locked
这是问题的真正答案。 – 2017-02-01 15:37:52
电话是ActiveWorkbook.Protect和ActiveWorkbook.Unprotect,但应该工作。有关错误描述和代码位置的更多详细信息将有助于解决此问题。 – 2010-09-11 11:32:09
嗨理查德,谢谢你的回复。当我使用这个工作簿.protect既没有显示错误也没有将其设置为受保护。是否我们应该开启一些功能来编写保护表单的代码。我已启用我的宏。我没有任何线索 – Ravi 2010-09-11 11:57:34