我正在尝试在用户输入的两个日期之间过滤电子表格。我编写的代码(在Excel中的自动宏工具的主要帮助下)是:
Sub Between()
Between Macro
Filters Create-Date between two parameters.
Dim MonthNeeded1 As Date, MonthNeeded2 As Date
Let MonthNeeded1 = InputBox("First Day Of Month for Target Period", "Date", "mm/dd/yyyy")
Let MonthNeeded2 = InputBox("Last Day Of Month for Target Period", "Date", "mm/dd/yyyy")
ActiveSheet.Range("$A$1:$S$8704").AutoFilter Field:=4, Criteria1:= _">= MonthNeeded1", Operator:=xlAnd, Criteria2:="<= MonthNeeded2"*
End Sub
我的问题似乎与Criteria1和Criteria2语句有关。字符串MonthNeededX
将被放入过滤器命令,而不是用户输入的变量日期。我搜索了这个网站和其他人,似乎无法找到问题。有人可以帮忙吗?
答案 0 :(得分:0)
这是@ simoco的答案。一旦Simoco输入答案,我将删除。只是想确保它被列为未来的研究人员。
改变这个:
ActiveSheet.Range("$A$1:$S$8704").AutoFilter _
Field:=4, _
Criteria1:=">= MonthNeeded1", _
Operator:=xlAnd, _
Criteria2:="<= MonthNeeded2"
对此:
ActiveSheet.Range("$A$1:$S$8704").AutoFilter _
Field:=4, _
Criteria1:=">=" & MonthNeeded1, _
Operator:=xlAnd, _
Criteria2:="<=" & MonthNeeded2