Я очень новичок в VBA и врезался в стену. Я пытаюсь автоматизировать использование 15 сводных таблиц (в этом примере только одна тестовая). Когда я делаю это вручную, я ввожу «мм / гггг» в поле поиска сводной таблицы и получаю возврат элементов за данный месяц. (Как видно на скриншоте)
Следующий код корректно фильтруется, если я сосредотачиваюсь на столбце Letter или числовом столбце, но если я пытаюсь сосредоточиться на времени создания дела / отформатированной дате, я получаю «Невозможно получить свойство pivotitem класса pivotfield»
Я полагаю, это связано с тем, что дата и время объединены или потому, что данные не являются "Чистыми".
Приветствуются любые очень простые указатели, которые вы можете дать.
Спасибо
Код:
Sub DateFilterPivotWithSlicer()
Dim p_i As PivotItem
ActiveSheet.PivotTables("PivotTable2").ClearAllFilters
ActiveSheet.PivotTables("PivotTable2").PivotFields ("FormattedDate")
With ActiveSheet.PivotTables("PivotTable2").PivotFields("FormattedDate")
.PivotItems("24/08/2018").Visible = True
For Each p_i In .PivotItems
' If loop here will cycle through all items in the pivot table and then pass to next
If p_i.Name <> "24/08/2018" Then
p_i.Visible = False
End If
Next
End With
End Sub
Тестовые данные, с которыми я работаю: