Excel VBA для фильтрации страницы отчета в сводной таблице - PullRequest
0 голосов
/ 23 ноября 2018

У меня есть сводная таблица с двумя фильтрами страницы отчета вверху.Один из них представляет собой фильтр на основе строк (4 варианта юниверсов на выбор), а один - на основе даты (одна запись в месяц, т. Е. С 01.09.2008 по 08.01.8 с возвращением на 5 лет).Я пытаюсь использовать VBA, чтобы обновить фильтр даты, чтобы выбрать, скажем, самые последние 3 месяца.

Я все перепробовал.Подходы .PivotItems не работают для фильтра отчетов с датами.Он отлично работает, если я попробую его с фильтром юниверса прямо над ним, но говорит, что не может получить доступ к методу PivotItems класса PivotFields, когда я переключаю код на другой фильтр, поэтому это должно быть связано с тем, что они являются датами..

Я могу просто очистить все фильтры на моем фильтре дат, и я могу использовать .CurrentPage, чтобы установить фильтр на одно значение - скажем, 09/01/2018 - но я не могу использовать эти методыотменить выбор всего и выбрать несколько конкретных месяцев.

Я использовал средство записи макросов в качестве крайней меры, и он сохраняет его, используя метод .PivotItems, чтобы изменить фильтр, но если я запустил этот точный макрос, он сохранил, то выдает ту же ошибку, что он не может получить доступ к PivotItems..

Я в конце концов.Меняет ли тот факт, что фильтр использует даты, способ, которым я должен получить к нему доступ с VBA?И как, черт возьми, мне это сделать?

Спасибо!

1 Ответ

0 голосов
/ 23 ноября 2018

Существует несколько решений для подключения слайсеров к сводным таблицам (или даже к нескольким сводным таблицам):

https://www.exceldashboardtemplates.com/how-to-insert-slicers-into-an-excel-pivot-table/

https://exceljet.net/lessons/how-to-use-a-slicer-with-multiple-pivot-tables

https://excelchamps.com/blog/link-slicer-to-multiple-pivot-tables/

Следуйте инструкциям и обратите внимание, что вам не нужен код VBA

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