2015-02-11 3 views
1

Я пытаюсь отфильтровать столбец даты для любой даты, которая выпадает до 1-го числа текущего месяца. Так что-то подобное ниже:Автофильтр VBA Excel для любой даты до текущего месяца

ActiveSheet.Range("$A:$BF").AutoFilter Field:=12, Criteria1:= _ 
    xlFilterYearToDate, Operator:=xlFilterDynamic 

Но не включает любые даты в текущем месяце он работает на.

Редактировать: Так что любая дата, которая выпадает до первого числа текущего месяца, в текущем году. Если фильтр применяется в настоящее время, было бы только показать даты с января месяца 2015 года Если применяется в августе, только в результате видимые даты должны быть чем-либо в январе-июле 2015 года

+0

Просьба указать, какие даты должны быть ** видимыми. ** –

+0

Спасибо, что посмотрели. Таким образом, любая дата, которая выпадает до первого текущего месяца, в текущем году. Если бы фильтр был применен в настоящее время, он будет показывать только даты с января 2015 года. Если применяется В августе, только итоговые видимые даты должны быть в январе-июле 2015 года. – mccreaVBA

ответ

4

Это должно работать для вас:

Dim dtStart As Date 
Dim dtFinal As Date 

dtStart = CDate(Evaluate("DATE(YEAR(NOW()),1,1)")) 
dtFinal = CDate(Evaluate("EOMONTH(TODAY(),-1)")) 

ActiveSheet.Range("A:BF").AutoFilter 12, ">=" & dtStart, xlAnd, "<=" & dtFinal 
+0

Большое спасибо за то, что вы посмотрели, , Очень признателен. – mccreaVBA

Смежные вопросы