我有一本工作簿,根据要求,我有几张纸。在这个工作簿中,我使用了宏并锁定了一些特定的单元格和列,我使用了unprotect和保护选项。一切都在我的机器上工作正常,但当我把它作为SharedWorkBook时,它给我的错误特别是 ThisWorkBook.Sheets(“PSE”)。取消保护和 ThisWorkBook.Sheets(“PSE”)。保护语句。因此,我使用 ThisWorkBook.Sheets(“PSE”)。UnprotectSharing 和 ThisWorkBook.Sheets(“PSE”)。ProtectSharing 。即便如此,我也会遇到这些问题的错误。
Sub SheetHider()
ThisWorkbook.Sheets("SheetA").UnprotectSharing
Cuser = ThisWorkbook.Sheets("SheetA").Range("A2").Value
且错误为运行时错误'438'对象不支持此属性或方法。
我的要求: 1)我必须使用宏,锁定属性,以便我必须使用Unprotect和Protect语句,这些东西应该在我作为SharedWorkBook时使用。
一个星期以来,我一直在搜索许多网站。 Atleast给了我一些替代方法。
任何帮助将非常感激。谢谢
答案 0 :(得分:4)
UnprotectSharing
和ProtectSharing
都属于Workbook
对象。所以你不能做你想做的事。
您可以执行ThisWorkbook.UnprotectSharing
和ThisWorkbook.ProtectSharing
,但这只是为了保护共享工作簿设置,以便人们无法在没有密码的情况下将其删除。
其次,在共享工作簿时,您无法取消保护或保护工作表。您必须取消共享工作簿,取消保护工作表,然后再次共享工作簿。这不太可行。
答案 1 :(得分:0)
您必须在保护共享工作簿之前保护工作表,取消保护将按相反的顺序进行。