2017-10-18 228 views
0

請錯誤幫助:「對象_global的運行時錯誤1004法範圍失敗」 VBA錯誤

runtime error 1004 method range of object _global failed

我在這個VBA收到。

我這個人之前有大約10多VBAS,他們沒有返回一個錯誤,但是這一次(它們是相同的,只是頁碼不同):

Sub actualizare() 
Dim lastRw1, lastRw2, nxtRw, m 
Dim StartRow, x 
Dim StartDate As String 
Dim FndRw As String 

lastRw1 = Sheets(11).Range("B" & Rows.Count).End(xlUp).Row 

StartDate = Range("908!A21").Value 

For StartRow = 1 To lastRw1 
If Range("19_01!B" & StartRow).Value = StartDate Then 

FndRw = StartRow 
Exit For 
End If 
Next 

***Range("19_01!AM" & FndRw & ":AM" & lastRw1).ClearContents*** 

lastRw2 = Sheets(15).Range("A" & Rows.Count).End(xlUp).Row 

For nxtRw = 1 To lastRw2 

With Sheets(11).Range("B2000:B" & lastRw1) 

Set m = .Find(Sheets(15).Range("A" & nxtRw), lookat:=xlWhole) 

If Not m Is Nothing Then 
Sheets(15).Range("B" & nxtRw).Copy _ 
Sheets(11).Range("AM" & m.Row) 

End If 
End With 
Next 
End Sub 

謝謝!

回答

0

嘗試這樣的:

If FndRw = vbNullString then Stop 
Worksheets("19_01").Range("AM" & FndRw & ":AM" & lastRw1).ClearContents 

並始終確保您引用正確的工作表,並指定變量的類型。

+0

謝謝你的回答。我會改正名字。問題是VBA正在等待從表格908的單元格a21中找到一個日期(dd/mm/yyyy)。但是有一些日子我在這個頁面中沒有請求。客戶不寫日期,而是寫「無法預測」。當代碼找到這個文本而不是日期時,它給了我「運行時錯誤1004」。 是否有可能修改代碼,如果它沒有在工作表908中找到日期單元格A21,則忽略該行並且不會嘗試導入我的數據? – lofgren

相關問題