默认情况下,在保护工作表上是无法再使用分级显示的,如下图所示:

如果要在保护工作表上启用分级显示,可以通过设置Worksheet对象的Protect方法中的UserInterfaceOnly参数为True,该参数默认情况下通过录制宏是不会显示的,然后设置Worksheet对象的EnableOutlining属性为True即可在保护工作表上启用分级显示。
代码如下:
Sub QQ1722187970()
Dim oWk As Worksheet
Set oWk = Excel.ActiveSheet
With oWk
'UserInterfaceOnly:=True这个是关键
.Protect DrawingObjects:=False, Contents:=True, Scenarios:= _
False, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, AllowInsertingRows _
:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True, UserInterfaceOnly:=True
'启用分级显示
.EnableOutlining = True
End With
End Sub


发表评论