VBA ListBox数据透视表选择

时间:2018-04-04 11:11:58

标签: excel excel-vba vba

我创建了一个宏来创建一个数据透视表,根据列表框中的用户选择进行过滤。它首先创建数据透视表,然后根据列表框选择添加过滤器。这是一个例子:

If ListBox1 = ("Fred") Then
  ActiveSheet.PivotTables("PivotTable1").PivotFields("Employee").CurrentPage = _
    "(All)"
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Employee")
    .PivotItems("Tom").Visible = False
    .PivotItems("John").Visible = False
    .PivotItems("Mary").Visible = False
End If

进一步详细说明,如果用户在ListBox中选择Fred,它会过滤掉所有其他员工,在本例中为Tom,John和Mary。

这是问题所在。我创建的ListBox之一允许用户选择多个项目。这意味着我需要将项目的所有组合/排列硬编码到vba中。有没有一种方法可以做到这一点,而无需单独编写每个可能的用户选择组合?

如果我需要提供更多详细信息,请与我们联系。

谢谢,

KJ

0 个答案:

没有答案