Я знаю, что правильно создаю массив, и раньше я использовал код автофильтра с массивами, но по какой-то причине, когда я пытаюсь фильтровать динамический массив возвращается только первое значение моего массива. Я создаю массив из уже отфильтрованного списка на одном листе, а затем перехожу на другой лист для фильтрации по значениям массива.VBA: Как фильтровать массив, который я создал из диапазона ячеек
Dim StepArray As Variant
Dim LastRow As Long
LastRow = Cells(Rows.Count, 1).End(-4162).Row
StepArray = Range("C4:C" & LastRow).SpecialCells(xlCellTypeVisible).Value
Sheet2.Select
LastRow = Cells(Rows.Count, 1).End(-4162).Row
Range(Cells(1, 1), Cells(LastRow, 5)).AutoFilter Field:=4, Criteria1:=StepArray, Operator:=xlFilterValues
End Sub
Позже в моем коде я переношу массив, и все отфильтрованные значения присутствуют, я не думаю, что это необходимо. Единственная проблема, с которой я сталкиваюсь, - это фильтрация b y массив. – BRCoder
Я тебя не понимаю. Вы написали _ «Я создаю массив из уже отфильтрованного списка» _. Ну, чтобы справиться с этой проблемой, вы должны действовать согласно моему коду (или эквиваленту). Так что либо вам нужно массив из непересекающегося (отфильтрованного) диапазона, либо вы _don't_. – user3598756
У меня есть все значения, которые я хочу в моем массиве. Я просто не могу фильтровать их в автофильтре на втором листе. – BRCoder