【问题标题】:VBA - If PivotItem is VisibleVBA - 如果 PivotItem 可见
【发布时间】:2015-06-18 22:50:45
【问题描述】:

如果 PivotItem 可见,我想运行一些 vba 代码,如果不可见,我想运行另一段代码。 当我运行这个 sub 并且该项目已打开时,它无法识别它是可见的。

Sub test()

If Sheets("Sheet1").PivotTables("PivotTable1").PivotFields("TestField").PivotItems("TestItem").Value = xlOn Then
MsgBox "is on"
Else: MsgBox "is off"
End If

End Sub

干杯

【问题讨论】:

  • 你尝试Refresh你的桌子了吗?
  • 是的,运行这个 sub 仍然不能正常工作。

标签: vba excel pivot-table pivotitem


【解决方案1】:

你想要的是可见属性而不是数据透视项的值属性。

试试这个:

If Sheets("Sheet1").PivotTables("PivotTable1").PivotFields("TestField").PivotItems("TestItem").Visible = True Then

【讨论】:

  • 使用这个仍然不起作用。在其他代码中,如果我要将项目设置为可见或不可见,那么该代码就可以了。但由于某种原因,检测它是否是另一回事。
  • 我制作了一个测试数据透视表并对其进行了精确测试,它按预期工作。可能数据透视表、数据透视字段或数据透视项的名称有误。您可以尝试使用相关数据透视表、数据透视字段和数据透视项目录制宏,然后查看这些项目的名称。
猜你喜欢
  • 1970-01-01
  • 2018-12-01
  • 1970-01-01
  • 2015-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多