gpt4 book ai didi

Excel 365 VBA 日期在自定义自动过滤器中不起作用

转载 作者:行者123 更新时间:2023-12-04 20:49:09 25 4
gpt4 key购买 nike

我创建了以下代码来过滤表(GrafanaPMT)以过滤今天 future 日期之后的所有日期。前几行清除当前过滤器,最后一行将日期插入到 Excel 表中,但不显示任何行(许多行的日期为 future )。
我也尝试过对今天的日期进行硬编码,尽管已添加到自定义自动过滤器中,但它也不会显示任何行。
如果我在过滤器中实际输入“19/08/2021”,则会显示超过 1000 行。
任何帮助将非常感激。
\[自动过滤器中显示的日期] 1

Sub MS4_not_6_over_3m()
'
' MS4_not_6_over_3m Macro
'
Dim today As Date

Sheets("Data").Select
ActiveSheet.ListObjects("GrafanaPMT").Range.AutoFilter Field:=5, Criteria1:="SEAL-RAN"
Rows("10:10").Select
ActiveWorkbook.Worksheets("Data").ListObjects("GrafanaPMT").Sort.SortFields.Clear
ActiveSheet.ShowAllData

ActiveSheet.ListObjects("GrafanaPMT").Range.AutoFilter Field:=11, Criteria1:=">=" & Format(today, "dd/mm/yyyy")

End Sub

最佳答案

尝试这个

Sub MS4_not_6_over_3m()
Dim ws As Worksheet: Set ws = Sheets("Data")
Dim ol As ListObject: Set ol = ws.ListObjects("GrafanaPMT")
Dim olCol As Integer

' clear table filters
If ol.AutoFilter.FilterMode Then ol.AutoFilter.ShowAllData

' Filter column 'mydate'
olCol = ol.ListColumns("myDate").Index ' Put here the name of your column
ol.Range.AutoFilter Field:=olCol, Criteria1:=">=" & Format(Date, "mm/dd/yyyy")

' OR
' ol.Range.AutoFilter Field:=olCol, Criteria1:=">=" & CDbl(Date)
End Sub

关于Excel 365 VBA 日期在自定义自动过滤器中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68849416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com