Вероятно, это связано с тем, как вы определили диапазоны для данных, критериев и назначения.Приведенный ниже код должен помочь показать явные диапазоны.
Предположим, у вас есть данные для фильтрации в столбцах Листа A:F
, критерии для фильтрации находятся в диапазоне I1:N2
и отфильтрованные данные для копирования в столбцы P:U
В первой строке кода столбцы E:F
помещаются только в столбцы T:U
на основе критериев I1:N2
Во второй строке все отфильтрованные данные из A:F
помещаются в P:U
на основете же критерии.
Кроме того, убедитесь, что заголовки полей / столбцов точно соответствуют данным / критериям / получателю
Sub test()
'Returns E:F in destination range T:U based on filter criteria
Sheet1.Columns("A:F").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Sheet1.Range("I1:N2"), _
CopyToRange:=Sheet1.Range("T1:U1"), Unique:=True
'Returns full range A:F in destination range P:U based on filter criteria
Sheet1.Columns("A:F").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
Sheet1.Range("I1:N2"), _
CopyToRange:=Sheet1.Range("P1:U1"), Unique:=True
End Sub