Я пытаюсь обновить сводную таблицу powerpivot на основе двух значений ячейки. Конечный пользователь будет использовать выпадающий список в ячейках C17 и C18 для получения значения в ячейке G17 и G18 (через некоторый расчет excel). Pivot Table будет обновляться на основе Cell G17 и G18.Контрольные фильтры таблиц сводных таблиц Excel из значений ячеек с VBA
Я выполнил код, как показано ниже, но он не работает, поскольку сводная таблица не обновляется после того, как я выберем значение из выпадающего списка в C17 и C18.
Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("G17:G19")) Is Nothing Then Exit Sub
Dim pt As PivotTable
Dim FieldHr As PivotField
Dim FieldEndingMin As PivotField
Dim NewHr As String
Dim NewMin As String
Set pt = Worksheets("Calculator").PivotTables("Table1")
Set FieldHr = pt.PivotFields("Hr")
NewHr = Worksheets("Calculator").Range("G17").Value
Set FieldEndingMin = pt.PivotFields("Ending Min")
NewMin = Worksheets("Calculator").Range("G18").Value
With pt
FieldHr.ClearAllFilters
FieldHr.CurrentPage = NewHr
FieldEndingMin.ClearAllFilters
FieldEndingMin.CurrentPage = NewMin
pt.RefreshTable
End With
End Sub
у вас есть ошибка? или просто ничего не обновляется? –