我有这个子:
Sub standardfilter()
Dim ws As Worksheet
Dim tbl As ListObject
Set ws = ActiveSheet
Set tbl = ws.ListObjects("Tabelle1")
tbl.Range.AutoFilter field:=2, Criteria1:=">=Date()", Operator:=xlAnd
Range("Tabelle1").Sort Key1:=Range("E5"), Order1:=xlAscending, Header:=xlYes
End Sub
它连接到一个命令按钮,执行时应首先过滤今天或将来的日期,然后按升序过滤另一个日期列。问题是,如果我只使用 Criteria1:=">=Date()"
执行第一个过滤器,则不会显示任何数据,其中包含今天或将来的数据。
“Gremium”是事件名称,“Gremientermin”是事件的日期,“Frist”是该事件流程中特定工作流程的日期。
最佳答案
使用
tbl.Range.AutoFilter field:=2, Criteria1:=">=" & CLng(Date), Operator:=xlAnd
在这种情况下,日期将转换为其等效数字 - 这被视为独立于系统语言的标准
关于excel - 过滤表中的日期值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76218528/