用excel VBA保存date标准

我试图保存自动filter,然后在我的工作表上做一些事情,并重新应用filter。

以下主题: 在Excel VBA中,如何保存/恢复用户定义的filter? ; 它即将工作。 然后我试图过滤date列,它不起作用 – >它给了我以下错误:

错误信息

我在互联网上寻找几个小时来find一个解决scheme,就像下面的post: Excel VBA使用date保存自动筛选设置 ; 但我无法解决这个问题…

我也在考虑以数字格式转换整个列,但是它不起作用,因为隐藏单元格未被转换,并且filter不转换filter列表中的值。

看来date不是一个有效的价值Criteria1 ..可能是?

这是我的代码:

 With myCurrentWorkbook.Worksheets(my_Of_To_Produce_Sheet).AutoFilter With .Filters ReDim filterArray(1 To .Count, 1 To 3) For f = 1 To .Count With .Item(f) If .On Then filterArray(f, 1) = .Criteria1 'it's on this line that it doesn't work 'I tried this solution found on internet 'filterArray(f, 1) = Replace(.Criteria1, Application.International(xlDecimalSeparator), ".") If .Operator Then filterArray(f, 2) = .Operator If .Operator = xlAnd Or .Operator = xlOr Then filterArray(f, 3) = .Criteria2 End If End If End If End With Next f End With End With