我正在尝试实施一键式数据透视表过滤(类似于this one)。它适用于单个项目,但由于某些原因不适用于多个项目:
Private Sub Workbook_SheetPivotTableUpdate(ByVal Sh As Object, ByVal Target As PivotTable)
Dim SourcePivotItem As PivotItem
For Each SourcePivotItem In Target.PageFields(1).PivotItems
If SourcePivotItem.Visible Then _
MsgBox SourcePivotItem.Name + " is visible"
' Message box never pops when EnableMultiplePageItems=True
Next SourcePivotItem
End Sub
有什么想法吗?我应该在multiselect上使用不同的属性吗?
p.s:我正在使用Excel 2013。
我试过的随机内容不起作用:
Target.PivotCache.MissingItemsLimit = xlMissingItemsNone
Target.PivotCache.Refresh
Target.RefreshTable