我正在尝试创建一个宏来过滤F列中的日期,以显示今天的日期和任何过期的内容,例如过去的日期,而且还删除了所有带有未来日期的行,我似乎无法使其正常运行。
例如:今天的日期是2020年9月9日
9/7/2020-显示
9/8/2020-显示
9/9/2020-显示
2020年9月10日-删除enter image description here
2020年9月11日-删除
Sub Macro11() Macro11 Macro
Rows("1:1").Select
Range("B1").Activate
Selection.AutoFilter
Selection.AutoFilter
ActiveSheet.Range("$A$1:$F$225").AutoFilter Field:=6, Criteria1:=1, _
Operator:=11, Criteria2:=0, SubField:=0
ActiveSheet.Range("$A$1:$F$225").AutoFilter Field:=6, Criteria1:="<(NOW)", _
Operator:=xlAnd
Range("G228").SelectEnd Sub
答案 0 :(得分:0)
@Brian Russell为什么要使用自动筛选?! 您只需向后循环每个单元格,如果日期>今天,您将删除该行。 基本代码(我想您的带有日期的列为F,就像您的示例图片一样)
Sub delfutureDays()
Dim cl As Long
For cl = Range("F2").End(xlDown).Row To 2 Step -1
If Cells(cl, "F") > Date Then Rows(cl).EntireRow.Delete
Next
End Sub