具有多选属性的ListBox会丢失所选项

时间:2015-06-10 21:11:51

标签: vba excel-vba listbox multi-select excel

我需要在基于具有多选属性= 1 - fmMultiSelectMulti的ListBox更改数据透视表中的过滤器,但是当我运行我的VBA代码时,在ListBox中选择的项目将丢失选择。

以下是代码:

Private Sub BtnAtualizarLiberty_Click()
    With Sheets("Liberty_Data").PivotTables("DinamicaLiberty1").PivotFields("RSCORE_CGV6")
                    .EnableMultiplePageItems = True
                    For Z = 1 To .PivotItems.Count
                        .PivotItems(Z).Visible = False
                        For r = 0 To ListRiscoScoreLiberty.ListCount - 1
                            If ListRiscoScoreLiberty.Selected(r) = True And ListRiscoScoreLiberty.List(r) = .PivotItems(Z).Value Then
                                .PivotItems(Z).Visible = True
                            End If
                        Next
                    Next
                End With
      End Sub

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。我正在用数据透视表数据填充列表框,当我在任何其他数据透视表中更改数据透视字段过滤器时,列表框丢失了所有选定的项目。

所以,现在我正在手动填充列表框,我已经制作了一个名为“过滤器”的工作表,并且我填充了一个包含所有列表框行的列,它已经解决了问题。

抱歉英语不好。