如何过滤列中的4个数字

时间:2017-08-14 21:27:25

标签: vba excel-vba excel

我知道如何过滤2个数字,如小于25和大于50等等,但我想知道如何过滤4个数字,如250到290之间,或者是70到110之间。

到目前为止我尝试的代码是

ActiveSheet.Range("$F$4:$AK$18").AutoFilter Field:=26, _
    Criteria1:=">=70", Operator:=xlAnd, Criteria2:="<=110"

ActiveSheet.Range("$F$4:$AK$18").AutoFilter Field:=26, _
    Criteria1:=">=250", Operator:=xlAnd, Criteria2:="<=290"

ActiveSheet.Range("$F$4:$AK$18").AutoFilter Field:=26, _
    Criteria1:=Array(">70", "<110", ">250", "<290"), Operator:=xlFilterValues

ActiveSheet.Range("$F$4:$AK$18").AutoFilter Field:=25, _
    Criteria1:=">=70", Operator:=xlAnd, Criteria2:="<=110", Operator:=xlAnd, _
    Criteria2:=">=250", Operator:=xlAnd, Criteria2:="<=290"

这些工作都不能让我想知道我试图做什么是可能的。

1 个答案:

答案 0 :(得分:0)

您需要高级过滤器才能实现目标。以下是如何申请:

Range("A5:C10").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range _
    ("A1:D2"), Unique:=False
  1. 确保您的数据包含列标题。
  2. 您需要在主数据上方创建标准部分。为此,请在数据上方插入至少3个空白行。第一个是标题,第二个是标准;第三个要求是空白的(分开主要数据和标准部分。见下图。
  3. 将主要数据中的列标题复制/粘贴到新创建的第一行(参见下图)。
  4. 从第二行开始,提供您的条件。每个标准行将与其他标准行进行“或”运算。如果你需要&#34; AND&#34;他们,使用单行。
  5. 如果您需要&#34; AND&#34;单个列上的两个或多个条件,在标准范围内创建具有相同标题的新列。例如,我想在下图中的销售列中添加两个条件,因此我在条件范围内添加了两个销售列(C和D)。
  6. 使用标准操作员提供您的条件。
  7. 现在从主功能区的数据选项卡中选择高级过滤器对话框。选择您的数据范围(在我的示例中为A5:C10),条件范围(在我的示例中为A1:D2),然后单击“确定”。选择条件范围时,请确保不包含空行。
  8. 有关更多示例,请参阅this article

    enter image description here