无法设置工作表类的可见属性
关于主题错误信息,Excelperformance出非常奇特的行为。 这不是众所周知的受保护的工作簿问题,因为我已经保护和不保护世界银行,只是为了排除潜在的问题,并且Workbook.ProtectWindows
和Workbook.ProtectWindows
都是False
。 世行没有枢轴和图表相关的对象,所以也不是这样。 它也没有只剩下一张是可见的。 事实上,当试图通过代码隐藏任何20张时发生错误。
下面的代码从一个名为ProtectedSheets
的表中ProtectedSheets
标签名称和可见性设置[-1, 0, 2]
以了解如何在Workbook_Close
方法中设置该标签的可见性。 作为Excel应用程序的开发人员,我试图隐藏包含内部应用程序数据的特定选项卡,用户不需要混淆。
Dim LO As ListObject: Set LO = [ProtectedSheets].ListObject Dim LR As ListRow Dim c1 As Range Dim c2 As Range For Each LR In LO.ListRows With LR.Range Set c1 = .Cells(LO.ListColumns("SheetName").Index) Set c2 = .Cells(LO.ListColumns("Visibility").Index) Worksheets(c1.text).Visible = c2 protectWS c1.text, True End With Next LR
在执行包含Visible
属性的代码行时,Excel会生成主题错误消息。 现在,这是蹭。 如果将WS添加为Watch项目,则可以在Watch窗格中编辑Visible属性,而不会生成错误。 同样,Visible属性也可以在“即时”窗格中进行更改,而不会生成错误。 但是,它在“debugging”窗格中停止。 嗯…
为了添加更多的特性,在Watch和Immediate窗格中,我发现当试图从2|xlSheetVeryHidden
更改为-1|xlSheetVisible
时,必须通过Visible属性来通过0|xlSheetHidden
-1|xlSheetVisible
。 相比之下,直接从xlSheetVisible
到xlSheetVeryHidden
的相反方向不会产生错误。 但是,试图通过代码0复制这个传递失败,产生相同的限制并产生错误。 我发现这个属性的行为有很多不一致的地方。 任何对这里发生的事情的深入了解。