2017-10-03 2 views
0

자동 필터 필드에 일련의 데이터를 사용해야합니다. 실제 매크로에서 스트링의 생성은 더 복잡하고 가변적이지만 아래 예제는 내 문제를보다 간단하게 재현합니다.가변 배열을 사용하는 자동 필터

문자열 변수를 자동 필터에 사용하려고하면 자동 필터가 모든 것을 숨 깁니다. 같은 문자열을 사용하지만 Array에 직접 넣으면 작동합니다. 누구나 배열을 사용하여 필터링하는 방법을 도와 줄 수 있습니까?

Term = """" & APR & """" & "," & """" & MAY & """" 

Debug.Print Term  'just to verify the strings are the same 

Arr1 = Array("APR", "MAY") 'works in the filter 
Arr1 = Array(Term)   'fails in the filter 

Worksheets("Filter").Range("$A:$H").AutoFilter Field:=2, _ 
    Criteria1:=Arr1, Operator:=xlFilterValues 

답변

0

Dim APR As String 
    Dim MAY As String 
    Dim arr1(0 To 1) As String 
    APR = "APR" 
    MAY = "MAY" 
    arr1(0) = APR 
    arr1(1) = MAY 
    Worksheets("Filter").Range("$A:$H").AutoFilter Field:=2, _ 
     Criteria1:=arr1, Operator:=xlFilterValues 
시도