Условная сводная таблица фильтрации (если выбрано, отключить другое)

Так же, как гласит название, я пытаюсь отключить или иметь противоположный фильтр по умолчанию «Все», если выбрано другое.

Например, у меня сводная таблица с двумя фильтрами – «НЕДЕЛЯ» и «МЕСЯЦ»,

Если кто-то выбирает значение в фильтре недели, я хочу, чтобы фильтр месяца по умолчанию был «(все)» и наоборот.

Довольно просто, но я не уверен, как атаковать это (VBA или формула) и, кроме того, код.

Спасибо, парни!

К сожалению, нет события, которое могло бы отслеживать изменение поворотного поля. Поэтому моя идея такова. Шаг 1. Поместите где-нибудь общедоступные переменные:

Public tmpM As Boolean Public tmpW As Boolean 

Шаг 2. В модуле листа, где размещена ваша сводная таблица, введите следующий код:

 Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable) On Error GoTo ErrorHandler Application.EnableEvents = False If Target.PivotFields("week").AllItemsVisible = False And tmpW = True Then Target.PivotFields("month").ClearAllFilters End If If Target.PivotFields("month").AllItemsVisible = False And tmpM = True Then Target.PivotFields("week").ClearAllFilters End If tmpM = Target.PivotFields("month").AllItemsVisible tmpW = Target.PivotFields("week").AllItemsVisible Application.EnableEvents = True Exit Sub ErrorHandler: Application.EnableEvents = True End Sub 

Он отлично работает с моими данными примера.

Изменить: обработка ошибок в приведенном выше коде.

Interesting Posts

vba, getElementsByClassName, двойные кавычки HTMLSource исчезли

Стили Excel не сохраняются

cfspreadsheet проблема обрезки данных ячейки в разных версиях ColdFusion

Исключение одного листа при сохранении книги

Изменить значение одной ячейки, только если номер индекса известен с помощью powershell

Как создать файл excel в xml

Есть ли способ загрузить несколько конфигураций сразу в тестовый пример в alm, используя vba / macro?

Excel Vba – ошибка во время выполнения 1004 при попытке присвоить значение формулы серии для соты

Возвращение массива / матрицы в Excel VBA из пользовательской функции

Что делает оператор унарного плюса в формулах Excel?

Сравнение и репликация / объединение данных для аналогичных строк в Excel

обработка нескольких файлов в папке и размещение в другой папке с тем же именем файла с помощью vba

Передайте параметры подключения DB к Kettle aka Таблица PDI Динамически введите шаг из Excel

Формула Excel в коде VBA

Excel VBA: вызов абсолютной ячейки из динамической ссылки

Давайте будем гением компьютера.