使用VBA自动过滤器排除两个数字之间的所有值

时间:2017-06-16 13:13:10

标签: excel-vba autofilter vba excel

对于某些仅包含数字的数据,我想过滤保存数据< -1或> 1.

我已经看到很多关于排除特定值的主题,但是这里不匹配,因为我的值可能是无限的。

我试过这段代码:

length = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row

ThisWorkbook.Sheets("Sheet1").Range("$A$2:$W$" & length).AutoFilter _
    Field:=19, _
    Criteria1:="<-1", _
    Operator:=x1Or, _
    Criteria2:=">1"

但会弹出错误消息“Range类的AutoFilter方法失败”。我也试过x1And运算符,但同样的问题。

仅在尝试此部分时:

length = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row

ThisWorkbook.Sheets("Sheet1").Range("$A$2:$W$" & length).AutoFilter _
    Field:=19, _
    Criteria1:="<-1"

完美无缺。所以我想我的“长度”变量或我的范围没有问题。

1 个答案:

答案 0 :(得分:0)

您错误输入了代码。 x1Or到xlOr