当自动过滤器没有匹配时结束宏

时间:2014-09-22 12:05:17

标签: excel vba autofilter

我设置了一个宏来设置按年,季度,移动(是/否)过滤数据,最终目标是创建一个计划文档,以显示每年的Q1 - Q4数据子集中的数据

我遇到的问题是,一旦它过滤了前两个变量,如果第三个没有匹配(匹配的值是ü),那么它会取消所有内容,只是从工作表中复制所有原始数据,就好像没有应用过滤器。

    Sheets("ChangeLog").Select 
ActiveSheet.Range("$A$2:$AP$2040").AutoFilter Field:=36, Criteria1:="4"
ActiveSheet.Range("$A$2:$AP$2040").AutoFilter Field:=35, Criteria1:="2020"
ActiveSheet.Range("$A$2:$AP$2040").AutoFilter Field:=15, Criteria1:="ü"
Range("A3:A2041").Select
Selection.Copy
Sheets("!PIPELINE_TEMPLATE").Select
Range("N77").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False

然后它会针对各种过滤条件继续这样做,但都遵循相同的模式。理想情况下,如果它找不到“ü”

,我希望它结束​​sub

非常感谢任何帮助:)

标记

1 个答案:

答案 0 :(得分:0)

谢谢Simon,

我们实际上设法在自动过滤器之后使用IF来解决它。

    vRows = Sheets(shtChangeLog).Cells(Rows.Count, 1).End(xlUp).Row
    If vRows > 2 Then