4
當我打電話Thisworkbook.Protect在VBA工作簿從當前工作簿的保護狀態,而不是隻保護工作簿中的保護實際上切換。Workbook.Protect錯誤與切換保護
Thisworkbook.Unprotect does not do this though。
任何人都知道爲什麼會出現這種情況或如何避開它?
當我打電話Thisworkbook.Protect在VBA工作簿從當前工作簿的保護狀態,而不是隻保護工作簿中的保護實際上切換。Workbook.Protect錯誤與切換保護
Thisworkbook.Unprotect does not do this though。
任何人都知道爲什麼會出現這種情況或如何避開它?
不知道這是由設計或一個錯誤。如果你提供的參數,它工作正常:
ActiveWorkbook.Protect ,true,true
或
ActiveWorkbook.Protect Structure:= true
無論你需要/想。這樣它就不會關閉保護,只能保護關閉。
要關閉保護關閉,你可以使用這個(assumning你只打開結構保護):
ActiveWorkbook.Protect Structure:= false
的參數是:
.Protect(Password, Structure, Windows)
我從來沒有注意到。在我的電腦上,Excel 2016是真實的。你可以用'If ThisWorkbook.ProtectStructure'或'If Thisworkbook.ProtectWindows'來測試。另外,你看看'UserInterfaceOnly',它可以消除在代碼中保護和取消保護的必要性嗎? –
UserInterfaceOnly不適用於我,因爲我有一些代碼修改了仍然需要取消保護的內容。我做了一點研究,這似乎是一個已知的問題。 雖然檢查保護狀態仍然有效。 – KingKong