Расширенный фильтр не работает как часть worksheet_change (по Val) - PullRequest
1 голос
/ 29 мая 2019

Я пытаюсь автоматически обновить график после изменения установленных критериев с помощью предварительных фильтров.

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

т.е. я пытаюсь использовать предварительный фильтр на Листе B (Листе Графика) из данных, взятых из Листа A (Сводный лист), когда заданные ячейки меняются в значении на Листе А, которыйобновит график на листе А, который берет данные из отфильтрованной таблицы на листе B

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

Любая помощь будет принята ...

Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range

Set KeyCells = Worksheets("Summary Sheet").Range("O5:S6")

If Not Application.Intersect(KeyCells, Range(Target.Address)) _
       Is Nothing Then

Sheets("Graph Sheet").Select
Application.CutCopyMode = False
Application.CutCopyMode = False
Range("A7:S1002").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
    Range("G1:I2"), Unique:=False
Sheets("Summary Sheet").Select

End If

End Sub

Альтернативный код

Sheets("Graph Sheet").Select
Application.CutCopyMode = False
Application.CutCopyMode = False
Range("Filter[#All]").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
    Range("G1:I2"), Unique:=False
Sheets("Summary Sheet").Select

Сообщения об ошибках не появляются при «работающем» коде, но таблица не отображаетсяотфильтрованы по требуемым значениям

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