Excel 引用数据透视项

Excel 引用数据透视项,excel,vba,pivot,Excel,Vba,Pivot,我正在尝试引用数据透视字段中选定的项。如果我使用以下代码,那么我会得到一个带有单词“Month”的消息框: MsgBox PT.PivotFields("Month").Value 我想要的是消息框显示当前选择的月份-因此,如果在数据透视字段中选择的月份是二月,那么将显示“二月”,而不是“月”。我会考虑使用数据透视项来实现这一点,尽管我似乎只能使用以下代码来定义这一点: MsgBox PT.PivotFields("Month").PivotItems("February").Value 这

我正在尝试引用数据透视字段中选定的项。如果我使用以下代码,那么我会得到一个带有单词“Month”的消息框:

MsgBox PT.PivotFields("Month").Value
我想要的是消息框显示当前选择的月份-因此,如果在数据透视字段中选择的月份是二月,那么将显示“二月”,而不是“月”。我会考虑使用数据透视项来实现这一点,尽管我似乎只能使用以下代码来定义这一点:

MsgBox PT.PivotFields("Month").PivotItems("February").Value

这将返回“二月”的静态结果,但一旦选择了不同的月份,则该结果将不起作用。

如果要获取选定的数据透视项,请使用Range类的数据透视项属性

MsgBox Activecell.PivotItem.Value
如果activecell不在数据透视表中,则会出现错误。你可能更喜欢

Dim pi As PivotItem

On Error Resume Next
    Set pi = ActiveCell.PivotItem
On Error GoTo 0

If Not pi Is Nothing Then
    MsgBox pi.Value
End If
以避免错误