gpt4 book ai didi

vba - Excel VBA 使用日期保存自动筛选设置

转载 作者:行者123 更新时间:2023-12-04 20:06:54 26 4
gpt4 key购买 nike

我有一个宏的一部分,它在清除过滤器之前存储自动过滤器设置,因此它可以稍后重新应用它们。代码如下:

Dim FilterArray()
With FrontPage.AutoFilter.Filters
ReDim FilterArray(1 To .Count, 1 To 3)
For f = 1 To .Count
With .Item(f)
If .On Then
FilterArray(f, 1) = .Criteria1
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

除了日期字段之外,这在我遇到的所有情况下都可以正常工作。对于日期字段,Criteria1 和 Criteria2 会导致错误(应用程序定义或对象定义错误),而 Operator 返回值 7。这发生在 Excel 2007 中,并且仍在 Excel 2013 中发生。

我认为这不起作用的原因是由于自动过滤器处理日期字段的嵌套方式,但是有没有办法让它与日期一起工作?我已经看到与将过滤器应用于日期有关的其他问题,但肯定首先存储它们应该更容易吗?

第二个问题 - 7 的值对 Operator 意味着什么?我只能找到值 0-2 的翻译。

最佳答案

我发现,要在数组中启用过滤日期。

以下设置必须禁用(默认启用)

ActiveWindow.AutoFilterDateGrouping = False

关于vba - Excel VBA 使用日期保存自动筛选设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20328968/

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