Workbook.Protect 切换保护的错误

Workbook.Protect bug with toggling protection

当我在 VBA 中调用 Thisworkbook.Protect 时,工作簿的保护实际上 切换 当前工作簿的保护状态,而不仅仅是保护工作簿。

Thisworkbook.Unprotect 不会这样做。

有人知道为什么会这样或如何解决这个问题吗?

不确定是设计使然还是错误...如果您提供参数,它可以正常工作:

ActiveWorkbook.Protect ,true,true

ActiveWorkbook.Protect Structure:= true

随便你need/want。这样它不会关闭保护,只会打开。

要关闭保护,你可以使用这个(假设你只打开了结构保护):

ActiveWorkbook.Protect Structure:= false

参数为:

.Protect(Password, Structure, Windows)