Работает только один из фильтров? - PullRequest
0 голосов
/ 26 апреля 2019

Мой расширенный фильтр работает отлично, за исключением того факта, что если первый фильтр пуст, ни один из других фильтров не работает ...

Мой первый фильтр - это год, и если я оставлю это поле пустым, чтобы просто искать страну, он просто удалит все данные.

(это не позволит мне загрузить картинку, потому что это слишком много мб) Но в основном это выглядит так:

Фильтры: Год, Страна, Эра

Если я введу год, он покажет правильные данные, включая правильные данные для страны и эпохи, но если я оставлю год пустым и введу страну и / или эпоху, данные не отобразятся.

Я использовал макрос записи для создания расширенного фильтра в VBA.

Мой код:

Sheet7.Range("B4").CurrentRegion.AdvancedFilter Action:=XlFilterCopy, _
Criteria Range:=Range("K2:N3"), CopyToRange:=("B8:I8"), Unique:=False

1 Ответ

0 голосов
/ 26 апреля 2019
  • Убедитесь, что вы очистили область, куда вы хотите вставить , прежде чем отфильтровать.
  • Убедитесь, что ваш диапазон адресов соответствует точно данным
  • CopyToRange:=("B8:I8") недопустимый диапазон, это должно быть CopyToRange:=Range("B8:I8")

Следующее будет работать, как ожидается, на примере, показанном ниже:

Option Explicit

Public Sub ApplyAdvancedFilter()

    Range("B4").CurrentRegion.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("K2:M3"), CopyToRange:=Range("B12"), Unique:=False

End Sub

enter image description here

Для получения дополнительной информации взгляните на ...

...