excel 如何使数据透视表筛选的数组循环更快?

pqwbnv8z  于 2023-03-31  发布在  其他
关注(0)|答案(1)|浏览(110)

如下是我目前使用的过滤数据透视表,但它需要很长的时间,我使用这种格式的多个数据透视表。所以,我想知道,如果有人知道如何使这更有效,更快?

Dim FilterArr() As Variant
Dim PTItm As PivotItem

FiterArr = Array("10000000", "100000001") 'Example, my array has more than 80 numbers can't show due to confidentiality

For Each PTItm In irccTable.PivotFields("Cost Center").PivotItems
    If Not IsError(Application.Match(PTItm.Caption, FiterArrIrcc, 0)) Then ' check if current item is        not in the filter array
        PTItm.Visible = True
    Else
        PTItm.Visible = False
   End If
Next PTItm

我什么都没做,不知道该往哪个方向走。

rjee0c15

rjee0c151#

所以Application.ScreenUpdating = False,将我的运行时间减少了一半;然而,我只是在excel vba之外创建了另一个列在原始数据表中,其中包含一个分类数字,然后将不同的数字分组在不同的类别下,这样的宏只需要通过一个无限小的数字列表来过滤。感谢@Evil Blue Monkey和@Tim威廉姆斯的帮助!

相关问题