VBA-将自动筛选应用于所有工作表,但条件不同

时间:2019-05-17 19:36:24

标签: excel

我需要将自动过滤器应用于工作表中的所有列,但条件不同。 适用于C列的第一个条件是删除基于上一个工作日(星期一-星期五)的所有将来的日期,并包括空白。 第二个条件是删除D列中的所有“已发货”。

1 个答案:

答案 0 :(得分:0)

在VBA中,您可以解决此问题。

您需要一个代码块才能应用自动过滤器。只需使用下面的语法,其中Field是表中的列。

static boolean is_valid_number(String x) {
    try {
        return (x.length == 5 && Integer.valueOf(x) <= 99999);
    } catch (NumberFormatException e) {
        // Integer.valueOf(x) throws this when the string can't be converted to an integer
        return false;
    }
}

字段是从1到n的数字,代表列号。 定义适合您需求的条件,然后对所有所需的列重复:

Expression. AutoFilter( _Field_ , _Criteria1_ , _Operator_ , _Criteria2_ , _VisibleDropDown_ )

上面的示例是一个示例代码,说明如何将2个不同的条件应用于2个不同的列(字段1和2)。