Фильтр сводной таблицы по значению ячейки на другом листе - PullRequest
0 голосов
/ 02 апреля 2019

Я пытаюсь отфильтровать сводную таблицу по значению ячейки.Значение ячейки, которое я использую, находится на отдельном листе, чем сводная таблица.Сводная таблица генерируется из запроса подключения к данным / питания.

ЗНАЧЕНИЕ СОТОВЫХ ДЛЯ ФИЛЬТРА Имя листа: "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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...