У меня есть сводная таблица с полем фильтра отчета A, полем меток столбцов B и полем меток строк C.

Каков простой способ проверить, отображаются ли эти поля в сводной таблице с помощью VBA?

0
user1609391 10 Ноя 2017 в 02:42

1 ответ

Лучший ответ

Вы можете проверить все три сразу, используя что-то вроде этого:

Sub CheckFields()
Dim pt As PivotTable
Dim pf As PivotField

Set pt = ActiveSheet.PivotTables("SomePivotTable")

For Each pf In pt.VisibleFields
    If intr("|A|B|C|", "|" & pf.Name & "|") > 0 Then
        'the pf is in the Pivot
    Else
        'the pf is not in the Pivot
    End If
Next pf
End Sub

... или вы можете просто проверить, что возвращает pf.orientation. Если это что-то, кроме xlDataField или xlHidden, тогда все готово.

enter image description here

0
jeffreyweir 10 Ноя 2017 в 02:00