使用VBA自动筛选排除两个数字之间的所有值



对于某些仅包含数字的数据,我想过滤保留数据<-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"

但是弹出错误消息"范围类的自动筛选方法失败"。我也尝试使用 x1And 运算符,但同样的问题。

仅尝试此部分时:

length = Cells.Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
ThisWorkbook.Sheets("Sheet1").Range("$A$2:$W$" & length).AutoFilter _
    Field:=19, _
    Criteria1:="<-1"

它工作得很好。所以我想我的"长度"变量或范围没有问题。

您输入了错误的代码。x1或到 xlOr

最新更新