Изменения данных таблицы Excel и сводной таблицы с одним слайсером - PullRequest
1 голос
/ 09 марта 2020

У меня есть таблица Excel (Ctr + T) и я создал сводную таблицу, используя ту же таблицу Excel на другой вкладке Excel. Есть ли способ, которым я могу изменить оба (таблица Excel и сводная таблица) с одним слайсером. Или, возможно, изменение в одном слайсере приведет к изменению в другом слайсере.

Я видел видео и другой форум вопросов и ответов, они не служат цели.

Я попытался соединить оба слайсера, выбрав опцию сообщить соединение в слайсере. но я не могу найти имя второго слайсера.

1 Ответ

0 голосов
/ 19 марта 2020

Если вы создадите два слайсера, один для таблицы и один для сводной таблицы, вы можете управлять слайсером таблицы из макроса события. Поместите это в ваш ThisWorkbook модуль:

Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
    Dim PivotSlicer As SlicerCache
    Dim TableSlicer As SlicerCache

    Set PivotSlicer = ActiveWorkbook.SlicerCaches("<Name of pivot slicer>")
    Set TableSlicer = ActiveWorkbook.SlicerCaches("<Name of table slicer>")

    Dim PivotSlicerItem As SlicerItem
    Dim TableSlicerItem As SlicerItem

    TableSlicer.ClearAllFilters
    For Each PivotSlicerItem In PivotSlicer.SlicerItems
        Set TableSlicerItem = TableSlicer.SlicerItems(PivotSlicerItem.Name)
        TableSlicerItem.Selected = PivotSlicerItem.Selected
    Next
End Sub

Обновите имена слайсеров в строках 5 и 6. Это будет go через элементы в круговом слайсере и наметить таблицу слайсер для тех же значений.

Слайсер таблицы необходим, но должен быть невидимым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...