首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >试图从切片器中获取多个名称值

试图从切片器中获取多个名称值
EN

Stack Overflow用户
提问于 2017-03-27 11:08:43
回答 1查看 124关注 0票数 1

因此,我想从我的“部门”切片器中检索选定的项目,并将它们存储在一个字符串中。然而,当我测试这个项目时,我只得到最后一个项目,它甚至没有被选中。这对于设置来自部门的相同项目的DepartmentX切片器非常有用,但是我只想将所选的项存储在字符串中。任何帮助都将不胜感激。

这是我到目前为止所拥有的

代码语言:javascript
复制
Private Sub Workbook_SheetActivate(ByVal Sh As Object)

   Dim PT1 As PivotTable, PT2 As PivotTable
   Dim slc1 As Slicer, slc2 As Slicer
   Dim slcCache1 As SlicerCache, slcCache2 As SlicerCache
   Dim slcItem1 As SlicerItem, slcItem2 As SlicerItem
   Dim slicer_data As String    

If Sh.Name = "GP YTD - Tooling (FYE 2016)" Then

   Set PT1 = Sheets("Sheet1").PivotTables
("PivotTable2") '(1)
   Set slc1 = PT1.Slicers("Department") '(1)
   Set slcCache1 = slc1.SlicerCache

   Set PT2 = Sheets("Sheet2").PivotTables
("PivotTable3") '(2)
   Set slc2 = PT2.Slicers("DepartmentX") '(2)
   Set slcCache2 = slc2.SlicerCache
   slcCache2.ClearManualFilter

   For Each slcItem1 In slcCache1.SlicerItems
       slcCache2.SlicerItems(slcItem1.Name).Selected = slcItem1.Selected    
       slicer_data = slcItem1.Name

       Application.EnableEvents = True            
   Next slcItem1 

   MsgBox "Selected" & slicer_data        
End If

End Sub
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-27 11:19:52

修改最后一部分如下:

代码语言:javascript
复制
   For Each slcItem1 In slcCache1.SlicerItems
       slcCache2.SlicerItems(slcItem1.Name).Selected = slcItem1.Selected    
       If slcItem1.Selected Then slicer_data = slicer_data & "," & slcItem1.Name

       Application.EnableEvents = True            
   Next slcItem1 

   MsgBox "Selected" & Mid$(slicer_data, 2)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43044729

复制
相关文章

相似问题

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