Сводные элементы - это отдельные значения в поле (столбец, строка, данные). Я думаю о них как о «корзинах», которые содержат все отдельные элементы данных, которые вы хотите объединить.
Вместо того, чтобы проходить через все поля сводной таблицы (столбец, строка и данные), вы можете просто пройти через интересующие вас поля. Например, этот код будет показывать только указанные сводные элементы для указанного поля. :
Public Sub ShowInPivot(Field As String, Item As String)
On Error GoTo ShowInPivot_EH
Dim pvtField As PivotField
Dim pvtItem As PivotItem
Dim pvtItems As PivotItems
For Each pvtItem In Worksheets("Pivot").PivotTables("PivotTable1").PivotFields(Field).PivotItems
If pvtItem.Name = Item Then
pvtItem.Visible = True
Else
pvtItem.Visible = False
End If
Next
Exit Sub
ShowInPivot_EH:
Debug.Print "Error(" & Err.Number & "): " & Err.Description
Exit Sub
End Sub
Предположим, у меня есть сводная таблица, показывающая количество проблем для каждого выпуска клиента и место их обнаружения в нашем SDLC. «Customer» и «Release» - это поля столбца, а «Phase» - поле строки. Если бы я хотел ограничить сводную таблицу подсчетом проблем для CustomerA, выпуск 1.2 во время QA, я мог бы использовать вышеприведенный подпункт, например:
ShowInPivot "Customer", "CustomerA"
ShowInPivot "Release", "1.2"
ShowInPivot "Phase", "QA"