Excel自动filter在月份的date

以下代码按照八月份的date过滤了一系列date

ActiveSheet.Range("$A$29:$CG$3582").AutoFilter field:=18, Criteria1:= _ xlFilterAllDatesInPeriodAugust, Operator:=xlFilterDynamic 

我如何使这个代码dynamic,以便我可以过滤任何月份的范围(如月(今()())?

尝试Criteria2 ,但这有点神秘。 传递Array(1, datestring) ,其中1将过滤该date的整个月份,且datestring必须为m / d / y格式。
(0 =整年,2 =日,还有一些, 这里讨论的地方 )。

 Dim s As String s = Format(Now, "MM""/""dd""/""yyyy") ActiveSheet.Range("$A$29:$CG$3582").AutoFilter _ Field:=18, Operator:=xlFilterValues, _ Criteria2:=Array(1, s) 

结束了做…

 Function GetDatesInPeriodConst(month As Long) GetDatesInPeriodConst = 20 + month '(January is number 21) End Function 

 ActiveSheet.Range("$A$29:$CG$3582").AutoFilter field:=18, Criteria1:= _ GetDatesInPeriodConst(month(Date)), Operator:=xlFilterDynamic