gpt4 book ai didi

vba - 仅显示特定的 PivotItems

转载 作者:行者123 更新时间:2023-12-04 20:40:51 24 4
gpt4 key购买 nike

我对 VBA 有点陌生,我保证我进行了搜索,但恐怕我太新了,甚至无法正确搜索,因为我不确定我可能需要的术语。

我有一个作为更大宏的一部分创建的数据透视表。创建后,我只想显示特定的 PivotItems。到目前为止,我看到我只能“隐藏”我不想看到的那些。这不起作用,因为我正在提取几个类似(但略有不同)的报告。有些不共享 PivotItems 并且在运行宏时我收到一个错误,因为该项目丢失。我的代码:

Sub PivotDetails()

With ActiveSheet.PivotTables("PivotTable5").PivotFields("Queue")
.PivotItems("CAR").Visible = False
.PivotItems("DOG").Visible = False
.PivotItems("TRUCK").Visible = False

End With
End Sub

所以我的一些报告有 DOG,但有些没有,所以这将导致报告出现错误,甚至没有要隐藏的项目。所有的报告都有我不想显示的项目,所以如果我能明确说明我想要的项目会更好。

这有意义吗?

最佳答案

您可以遍历每个 PivotItemPivotField并使用 Select声明以确定您是否希望它可见。

关键是您列出了所有要显示(或不显示)的项目,如果该项目在给定的 PivotTable 中不存在它将被忽略,因为名称永远不会传递到 Select 语句中。

Sub PivotDetails()

Dim ws As Worksheet, pt As PivotTable, pf As PivotField, pi As PivotItem

Set ws = Sheets("mySheet") 'replace with your sheet name
Set pt = ws.PivotTables("PivotTable5")
Set pf = pt.PivotFields("Qeue")

For Each pi In pf.PivotItems

Select Case pi.Name

Case Is = "CAR", "DOG", "TRUCK" 'add more values as needed

pi.Visible = False

Case Else

pi.Visible = True

End Select

Next


End Sub

关于vba - 仅显示特定的 PivotItems,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33894444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com