2014-09-22 67 views
0

我有一個宏設置爲按年份,季度,移動(是/否)過濾數據,最終目標是創建一個時間表文檔以顯示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 

然後它繼續這對於各種過濾標準,但都遵循相同的模式。理想情況下,我希望它結束​​子,如果它不能找到「ü」

任何幫助,將不勝感激:)

馬克

+0

如果在要複製的範圍中包含列標題,即'Range(「A2:A2041」)。但我想你不想那樣做(?)。 – 2014-09-22 19:32:15

回答

0

感謝西蒙,

我們實際上設法圖它在自動過濾器之後使用IF。

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