首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Excel:保护密码与VBA密码不兼容?

Excel:保护密码与VBA密码不兼容?
EN

Stack Overflow用户
提问于 2017-06-07 18:58:20
回答 2查看 1.6K关注 0票数 0

我知道两种可能的密码保护方法-在Excel中保护表格-

  1. 手动密码保护
  2. 使用VBA进行密码保护

这就是我困惑的地方。我使用VBA对工作表进行密码保护,然后尝试用VBA中使用的相同密码手动解除保护。但是Excel会抛出一个错误,说明提供的密码不正确。我尝试了相反的方法--手动保护文件,然后尝试使用VBA解除保护,在代码中提供正确的密码;同样的错误。知道为什么会这样吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-07 22:16:13

经过一些分析,我发现了我的代码中有什么问题-

代码语言:javascript
运行
复制
ActiveWorkbook.Protect Password = "xyz", Structure:=True, Windows:=False

密码选项被指定为"=“符号,而不是":=”。此代码仍然保护工作表,但使用的是空密码。当我使用类似的非保护代码时,

代码语言:javascript
运行
复制
ActiveWorkbook.Unprotect Password = "xyz"

取消保护代码正在传递一个空密码。因此,如果我尝试手动密码"xyz“,它会抛出一个错误。

解决这个问题的正确代码是

代码语言:javascript
运行
复制
ActiveWorkbook.Protect Password:= "xyz", Structure:=True, Windows:=False
ActiveWorkbook.Unprotect Password:= "xyz
票数 1
EN

Stack Overflow用户

发布于 2017-06-07 19:13:19

如果我正确理解你的问题,它的发生是因为每个密码是保护不同的东西。它们不是一回事。您可以使用不受密码保护的工作簿,但是VBA代码是受密码保护的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44420753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档