excel 在VBA中从数据透视表筛选器中排除项

63lcw9qa  于 2023-08-08  发布在  其他
关注(0)|答案(1)|浏览(109)

我是新的VBA和我正在开发一个代码,其中我想添加到一个透视表过滤器的所有项目,不包括只有代码“01”每次。

pt6.PivotFields("[Data Pull  2].[something_here456].[something_here456]").visibleItemsList = Array( _
  "[Data Pull  2].[something_here456].&[02]", _
  "[Data Pull  2].[something_here456].&[03]", _
  "[Data Pull  2].[something_here456].&[04]", _
  "[Data Pull  2].[something_here456].&[06]", _
  "[Data Pull  2].[something_here456].&[07]", _
  "[Data Pull  2].[something_here456].&[NULL]")

字符串
这段代码的问题是,当我将这段代码应用到另一个文件时,其中一个项(例如,“06”)可能不存在,代码中断。所以我想有一些东西,只排除01和激活其他一切。我尝试了我在网上看到的所有东西,比如“可见=假”,但它仍然给我一个错误。请帮助我我的朋友
还尝试,例如:

With ActiveSheet.PivotTables("PivotTable6").PivotFields("something_here456). _
   CurrentPage = "(ALL)"

With ActiveSheet.PivotTables("PivotTable2").PivotFields("something_here456")
   .PivotItems("01").Visible = False

End with

bq3bfh9z

bq3bfh9z1#

您可以循环透视表项,并使用以下命令将除01之外的所有内容设置为可见:

Dim pvtItem As PivotItem

For Each pvtItem In PT6.PivotFields("[Data Pull  2].[something_here456].[something_here456]").PivotItems
   If pvtItem.Caption <> "01" Then
       pvtItem.Visible = True
   Else
       pvtItem.Visible = False 
   End If
Next pvtItem

字符串

相关问题