首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用数组检查PivotItems.Name <>数组,然后检查PivotItems.Visible = False

问使用数组检查PivotItems.Name <>数组,然后检查PivotItems.Visible = False
EN

Stack Overflow用户
提问于 2019-06-26 18:30:50
回答 1查看 356关注 0票数 2

我正在尝试使用一个数组来检查数据透视表中筛选的枢轴项,以确定它是否应该是可见的。目前,我用下面的代码硬编码了它。但是,当我有超过一个项要检查过滤器时,我想使用Array。

目标是只过滤所需的项目。

代码语言:javascript
复制
Supply = Array("X Marketplace", "Y Marketplace")

With PivFid
    For i = 1 To .PivotItems.Count
        If .PivotItems(i).Name <> "X Marketplace" Then .PivotItems(i).Visible = False
    Next i
End With

这是我正在努力完成的事情,但我不知道如何针对筛选的项遍历数组。

代码语言:javascript
复制
With PivFid
    For i = 1 To .PivotItems.Count
        If .PivotItems(i).Name <> Supply Then .PivotItems(i).Visible = False
    Next i
End With
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-26 18:36:35

您可以使用Application.Match检查它。结合前面的IsError,它将检查是否在整个Supply数组中找不到当前的PivotItem名称)。

码

代码语言:javascript
复制
Supply = Array("X Marketplace", "Y Marketplace")

With PivFid
    For i = 1 To .PivotItems.Count
        If IsError(Application.Match(.PivotItems(i).Name, Supply, 0)) Then .PivotItems(i).Visible = False
    Next i
End With

--以防万一--您需要展示其他的:

代码语言:javascript
复制
With PivFid
    For i = 1 To .PivotItems.Count
        If IsError(Application.Match(.PivotItems(i).Name, Supply, 0)) Then
            .PivotItems(i).Visible = False
        Else
            .PivotItems(i).Visible = True
        End If
    Next i
End With
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56779073

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档