【发布时间】:2015-08-26 16:40:07
【问题描述】:
这是我第一次使用 VBA。我需要在 Excel 电子表格中显示切片器选择。每张表中有 15-20 个切片器,最多有 50 个可能的选择,所以我不想使用多维数据集代码在每个单元格中显示一个选择。如果可能,我希望它们在一个单元格中用逗号分隔(或返回“全部”或“无”)。
这是我通过对本网站和其他网站的研究以及尝试自己编辑而拼凑的内容(因此它可能完全是一团糟)。
我放弃搜索和寻求帮助!如果您能向我指出一个简单的“速成课程”VBA 基础知识网站,我也将不胜感激。谢谢你。
Public Function GetSlicerItems()
Dim cache As Excel.SlicerCaches
Set cache = ThisWorkbook.SlicerCaches("Slicer_YR_MNTH_CD1")
Dim sItm As Excel.SlicerItem
Dim ICt As Long
For Each sItm In cache.SlicerItems
If sItm.Selected = True Then GetSlicerItems = GetSlicerItems & sItm.Name & ", "
ICt = ICt + 1
If sItm.HasData = False Then
ICt = ICt + 1
End If
Next
If Len(GetSlicerItems) > 0 Then
If ICt = cache.SlicerItems.Count Then
GetSlicerItems = "All Items"
Else
GetSlicerItems = Left(GetSlicerItems, Len(GetSlicerItems) - 2)
End If
Else
GetSlicerItems = "No items selected"
End If
End Function
【问题讨论】: