Страницы: 1
RSS
Фильтр в сводной таблице через переменные (значение ячеек)
 
Всем привет!

Нужна помощь, не могу разобраться с синтаксисом VBA кода, который помог бы мне в автоматическом режиме менять фильтрацию дат на необходимую мне.

Что имеется:
Таблица, в которой фильтр дат выглядит следующим образом
Скрытый текст

То есть, при нажатии на "+" ничего не открывается и выбирается точно такое же значение.

У меня отдельными строками выведены значения, которые автоматически меняются формулой, в зависимости от той даты, которая сегодня.
Фильтры динамичные, меняются от месяца к месяцу по принципу - игнорирует текущий, выбирает 3 предыдущих месяца. Вид значений: 02.2024, 01.2024, 12.2023 и так далее.
Скрытый текст

Макрорекордером записал код, но как подставить к нему переменные так и не смог сообразить
Код
ActiveSheet.PivotTables("Сводная таблица11").PivotFields( _
        "[Date].[MonthNumber, Year].[MonthNumber, Year]").VisibleItemsList = Array( _
        "[Date].[MonthNumber, Year].&[02.2024]", "[Date].[MonthNumber, Year].&[12.2023]")

Прошу помочь с макросом, который бы брал значения из 3х ячеек и фильтровал сводную таблицу по этим критериям.
Файл пример предоставить не могу, т.к. сводная таблица - подключение к БД, отсоединяя которую, файл перестает реагировать на фильтры (

Всем заранее большое спасибо за помощь!
 
вместо [02.2024] подсунуть значение из ячейки.
 
Цитата
V написал:
вместо [02.2024] подсунуть значение из ячейки.

Это все конечно прекрасно, но подставляя в разные места дату, как из переменных, так и из ячеек напрямую, получаю ошибки
Скрытый текст


По итогу к единому виду, который бы работал и давал результат я не могу
Крутил по разному, но ничего так и не смог самостоятельно запустить. Дело явно во мне и моих способностях, поэтому прошу помощи

Обычный фильтр на сводной таблице работает прекрасно, там и через переменные я кручу и через данные в ячейках, но тут ситуация с каким-то двойным внутри себя названием фильтра, поэтому какая-то путаница.
 
Пока Вы не напишите как что прописываете и откуда чего взять - Вам никто ничего толкового и полностью рабочего не предложит. Кроме Вас никто не знает, что там в Ваших ячейках и в каком виде записано.
Вот, крутите(ячейки свои указывайте):
Код
ActiveSheet.PivotTables("Сводная таблица11").PivotFields( _
        "[Date].[MonthNumber, Year].[MonthNumber, Year]").VisibleItemsList = Array( _
        "[Date].[MonthNumber, Year].&[" & Range("A1").Value & "]", "[Date].[MonthNumber, Year].&[" & Range("A2").Value & "]")
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков, я даже не сомневался, что вы поймете и предложите рабочий вариант.
Я сделал точно так же, только лишние кавычки оставлял и получалось так

С Вашим кодом
Код
"[Date].[MonthNumber, Year].&[" & Range("U3").Value & "]",

А у меня было так:
Код
"[Date].[MonthNumber, Year]." &"[" & Range("U3").Value & "]",

И я подумал, что такой вариант нерабочий

Спасибо Вам большое, вы очень выручили! Хорошего вечера / дня!
Страницы: 1
Наверх