【发布时间】:2020-02-16 15:57:35
【问题描述】:
我已经开始处理 Excel 工作表并运行一些计算字段,我需要一个公共函数来返回在单个切片器中选择的项目数。 我上网,但不幸的是,我只能找到实际上根本不起作用的 VBA 代码。 我最近才第一次开始使用 VBA,所以我没有这方面的经验。
我设法使用了这段代码,但它不是公共函数,因此不能在数据透视表的计算字段中使用:
Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
Const sSlicerName As String = "Producer"
On Error Resume Next
If Not IsError(Target.Slicers(sSlicerName).Name) Then _
Range("A1") = ActiveWorkbook.SlicerCaches("Slicer_" & sSlicerName) _
.VisibleSlicerItems.Count
End Sub
你们中有人遇到过这个问题并找到解决问题的方法吗?
提前谢谢你!
【问题讨论】:
-
您能否发布您尝试过的代码之一,即使它不起作用?至少,为了更好地了解您的目标是什么……您至少可以在尝试处理该工作表的方式之前和之后发布图像(如果可能的话可编辑)?如果不是,您能否更好地描述“返回单个切片器中选择的项目数”的含义?您的选择是否仅包含一行的单元格?
-
您可以在上面的问题中找到我尝试实现的代码。我正在寻找的是一个函数,它返回作为数据透视表中过滤器的切片器的一部分的元素。在切片器中,有几个“生产者”,我想知道所选的数量,以便使用这个数字来计算计算字段中的平均值。我希望这能澄清问题,如果没有,请告诉我