2010-03-18 7 views
2

Excel에서 정보를 필터링 할 때 VBA를 사용해야합니다. 필자는 20 개의 컬럼을 가진 Excel을 가지고 있으므로, 하나의 값 (예 : ID010)이 포함 된 경우 일부 컬럼에서 자동 필터 기능을 사용하여 검색하려고합니다. 내가 원하는 것은 적어도 하나의 열에 ID010이 포함 된 모든 행을 표시한다는 것입니다.Excel VBA의 다중 열이있는 자동 필터

현재 아래 코드를 사용하여 검색하고 있습니다. 모든 기준이 사람이 나에게 몇 가지 힌트 또는이 문제를 처리하는 방법을 예를들 수 있는지 궁금

' Search range, [argIn]---> search value 
With [D5:M65536] 
     .AutoFilter Field:=4, Criteria1:=argIn 
     .AutoFilter Field:=5, Criteria1:=argIn 
     .AutoFilter Field:=6, Criteria1:=argIn 
     .AutoFilter Field:=7, Criteria1:=argIn 
     .AutoFilter Field:=8, Criteria1:=argIn 
     .AutoFilter Field:=9, Criteria1:=argIn 
     .AutoFilter Field:=10, Criteria1:=argIn 
     .AutoFilter Field:=11, Criteria1:=argIn 
     .AutoFilter Field:=12, Criteria1:=argIn 
     .AutoFilter Field:=13, Criteria1:=argIn 
End With 

사용하여 AND 연산자를 함께 묶는 것 때문에, 어떤 데이터를 찾을 수 없습니다.

미리 감사드립니다.

답변

2

자동 필터 기능은 여기에 도움이되지 않습니다. 필터가 함께 동작하는 것을 발견했기 때문입니다.

하나 개의 접근법은

=COUNTIF(A$2:A$20, "ID010") 

같이 워크 기능으로 채워 (아마도 VBA 통해 유지) 스프레드 시트의 제어 열이, 그리고, 제어 컬럼 필터를 적용하는 것이다.

+0

답장을 보내 주셔서 감사합니다. 완벽하게 작동했습니다. –