Я пытаюсь отфильтровать сводную таблицу по значению ячейки.Значение ячейки, которое я использую, находится на отдельном листе, чем сводная таблица.Сводная таблица генерируется из запроса подключения к данным / питания.
ЗНАЧЕНИЕ СОТОВЫХ ДЛЯ ФИЛЬТРА Имя листа: "HOME", Ячейка: E11
PIVOT TABLE Имя листа: "PIVOTSHEET", Имя PT: "PIVOT", PT Поле для фильтра: "ID"
Если значение в E11 на листе HOME существует в фильтре "ID", фильтр "Поле "ID" в сводной таблице со значением E11
Если значение в E11 не существует, отфильтруйте сводную таблицу, чтобы оно было пустым
Я попробовал код ниже (найден и отредактирован).Я продолжаю отлаживать, и это сводит меня с ума.Я попал в то место, где я запускаю формулу для помещения значения из E11 в «HOME» в ячейку C1 в «PIVOTSHEET» (C1 = HOME! E11), но оно все еще не работает.
Любая помощь будет высоко ценится.
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C1")) Is Nothing Then Exit Sub
Dim pt As PivotTable
Dim pf As PivotField
Dim NewCat As String
Set pt = Worksheets("PIVOTSHEET").PivotTable("PIVOT")
Set pf = pt.PivotField("[Combo].[ID].[ID]")
NewCat = Worksheets("PIVOTSHEET").Range("C1").Value
With pf
.ClearAllFilters
.CurrentPage = NewCat
End With
pt.RefreshTable
End Sub