2017-07-14 172 views
0

我試圖加載具有Workbook.Open和在任何情況下的幾個工作簿,我碰到一個「運行時錯誤‘424’:所需的對象」workbook.open運行時錯誤424

有問題的代碼是:

Const path As String = "\\networkpath\data\" 

Sub LoadReports() 
Dim date_ext As String 
date_ext = "_" & Format(Date, "yyyy-mm-dd") & ".xlsm" 

Workbook.Open path & "ReportX" & date_ext ' This is where the runtime error occurs 
End Sub 

如果日期爲2017年7月14日,則路徑和文件名應解析爲「\\ networkpath \ data \ ReportX_2017-07-14.xlsm」。

當我註釋掉Workbook.Open並在運行完整宏之前手動打開文件時,一切正常。更令人困惑的是,在其他工作簿中的其他宏中,完全相同的代碼正常工作。當我搜索運行時錯誤424和/或Workbook.Open時,找不到任何我不知道的東西,例如filename參數正在查找包含路徑的字符串。我不確定這裏有什麼問題。任何幫助表示讚賞,謝謝!

+0

'Workbooks.Open',不'Workbook.Open' – YowE3K

回答

0

首先將測試工作簿放在服務器上。它命名爲abc123.xlsm

那就試試這個

Sub testLoadReport() 
    Workbooks.Open "\\networkpath\data\abc123.xlsm" 
End Sub 
+0

這不回答這個問題。它只是表明修復這個錯字將會使它發揮作用,但是你沒有提到錯字是問題。而且由於錯別字而引發的問題與SO(「這個問題是由於無法複製的問題或簡單的印刷錯誤導致的)引起的。」因此,沒有必要發佈答案 - 只要指出錯誤一條評論。 – YowE3K

+0

我不知道是否是造成問題的錯字。此代碼片段應確認是否有任何文件在該目錄中實際可訪問,然後再嘗試確定實際問題。我也試圖建議@Turkish在類似的情況下做什麼。 (即從可疑池中移除儘可能多的代碼) – jsotola

+0

由於錯誤提示'「運行時錯誤'424':Object Required」'並且由於錯字導致該行沒有對象,所以我可以保證它** **是產生錯誤的錯字。 – YowE3K