首页 > 解决方案 > VBA:如何检查 Filter Criteria2 是否存在?

问题描述

我正在尝试检查Criteria2表上的过滤器是否存在。如果只有一个标准或者如果Criteria1是一个数组,我会收到错误消息。有没有办法检查过滤器的标准是否存在或标准的类型?

我的代码给了我一个运行时错误'1004': Application-defined or object-defined error。它仅在我选择了 2 个标准时才有效。如果我选择了一个标准或选择了一个数组,它就不起作用。

    If MyTable.AutoFilter.Filters(2).Criteria2 <> "" Then
        Debug.Print "yes c2"
    Else
        Debug.Print "no c2"
    End If

标签: excelvbafiltercriteria

解决方案


您可以检查该.Count属性:

If MyTable.AutoFilter.Filters(2).Count > 1 Then
    Debug.Print "yes c2"
Else
    Debug.Print "no c2"
End If

推荐阅读