2014-06-23 72 views
0

我有以下代碼。我正在應用具有不同條件的過濾器,它在過濾器有行時工作,但是當它沒有時,我會在「My_Range.Parent」行收到錯誤「Property let procedure not defined and property get procedure not return a object」。 AutoFilter.Range.Copy」。如果自動篩選結果存在,複製/粘貼宏

如何跳過此空的「粘貼」以繼續使用我的宏?謝謝!!

My_Range.AutoFilter Field:=14, Criteria1:="=FEDERAL" 
My_Range.AutoFilter Field:=7, Criteria1:="=No" 


    'Copy/paste the visible data to the new worksheet 

    My_Range.Parent.AutoFilter.Range.Copy 
     With Sheets("Federal").Range("c5") 
     .PasteSpecial xlPasteValues 
     .PasteSpecial xlPasteFormats 
     Application.CutCopyMode = False 
     '.Select 
    End With 


End If 

回答

0
跳過槽的誤差

簡單的方法就是寫:

On Error GoTo myerrorhandler 'put this line on the beginning of you sub/function 
    ... your code ... 
myerrorhandler: 'after error your code continues to execute from this line 
    .... more of your code... 

,或者你可以只寫

On Error Resume Next 'your code will resume to next line of code after the error 
+0

順便說一句,小心這也將禁用所有的錯誤信息,這意味着你在執行此操作之前,應確保您的代碼沒有任何其他錯誤或錯誤。如果你想進行調試或者這樣,這也會「隱藏」所有的錯誤。 –