2016-10-17 4 views
0

옵션 버튼 덕분에 Excel의 데이터에 필터를 설정하려고합니다.VBA에서 필터 기준을 자동으로 변경하는 방법은 무엇입니까?

나는 만기일이 있으며 만료 된 모든 항목을이 필터로 제외하고 싶습니다.

셀 A3은 오늘 Excel 기능 Today()로 오늘의 날짜를 제공합니다.

Sub OptionButton6_Click() 
    Rows("12:12").Select 
    Selection.AutoFilter 
    ActiveSheet.Range("$A$12:$AK$175").AutoFilter Field:=7, Criteria1:= _ 
    ">12/09/2016" , Operator:=xlAnd 
    Range("A1").Select 
End Sub 

그리고 나는 이것을 시도 :

나는이 작동하는지 알고 A3이되는과

Sub OptionButton6_Click() 
    Rows("12:12").Select 
    Selection.AutoFilter 
    ActiveSheet.Range("$A$12:$AK$175").AutoFilter Field:=7, Criteria1:= _ 
     A3, Operator:=xlAnd 
    Range("A1").Select 
End Sub 

: =CONCATENATE(">",TEXT(TODAY(),"dd/mm/yyyy"))

당신이 해결하는 방법에 대한 어떤 생각을 가지고 있습니까 이 문제? 사전에

많은 감사, Trancavel

답변

0

이 시도 :

ActiveSheet.Range("$A$12:$AK$175").AutoFilter Field:=7, _ 
    Criteria1:= ">" & DateValue(Now()), Operator:=xlAnd 
+0

감사합니다! 코드는 작동하지만 완전히 작동하지는 않습니다. 이제 매크로를 적용하면 모든 것이 필터링됩니다. 데이터가 없습니다. 그러나 "데이터 필터"에 들어가면 좋은 필터가 설정되고 다시 유효성을 검사하면 좋은 데이터가 표시됩니다. 날짜 형식의 문제 일 수 있습니까? – Trancavel

+0

워크 시트가 실제 날짜 값을 포함하는지 또는 날짜 값 *처럼 보이는 문자열인지에 따라 달라질 수 있습니다. 차이점이 있습니다. 그리고 나는 그 문제의 근원이라고 생각합니다. –

+0

내가 확인했는데이 열의 값은 모두 날짜 형식으로되어 있습니다. 코드가 필터를 자동으로 만들고 있으므로 수동으로 활성화 할 수 있습니다. 그러나 매크로를 실행할 때 아무 것도 표시하지 않습니다. 나는 정말로 이해하지 못한다. – Trancavel

관련 문제