2016-06-09 113 views
1

我试图从存在于工作簿中的每个切片器中选择所有项目。Excel VBA:从每个切片器中选择所有项目

目前我有以下的,然而,这是产生“运行时错误438:对象不支持此属性或方法”:

Dim sc As SlicerCache 
Dim sl As Slicer 
Dim i As Integer 
For Each sc In ActiveWorkbook.SlicerCaches 
    For Each sl In sc.Slicers 
     For i = 1 To sl.SlicerItems.Count 
      sl.SlicerItems(i).Selected = True 
     Next i 
    Next sl 
Next sc 

我,我通过我开始循环六号线因为后来我需要使用相同的代码来选择只存在于数组中的项目。

任何帮助非常感谢,谢谢!

+0

也许这篇文章将帮助:http://stackoverflow.com/questions/33374563/iterate- over-slicer-via-vba-and-select-a-single-item-each-time – Brian

+0

非常感谢Brian。 –

回答

1

把上面一行For i = 1 to sc.SlicerItems.Count,它应该工作(slicerItems是SlicerCache的属性,而不是切片对象本身

+0

我相信你也应该在循环中将后续的'sl'改为'sc' – RGA

+0

完美,作品现在,非常感谢。 –

相关问题