假設你想創建,然後關閉鏈接的Excel工作表後:錯誤關閉OLEOBJECT Excel.Sheet創作
Dim shp As shape
Set shp = Application.ActiveDocument.Shapes.AddOLEObject(ClassType:="Excel.Sheet")
DoEvents
shp.OLEFormat.Object.Close
這種失敗,此錯誤:
Run time error '1004'
Close method of Workbook class failed
爲什麼?我似乎無法找到任何發生這種情況的例子,我能找到的最接近的例子是this,它與用戶窗體比實際功能更相關。
該錯誤似乎非常通用,有沒有什麼辦法可以得到一個更具體的原因「爲什麼」關閉方法失敗?看起來如果你谷歌周圍,你會發現這個錯誤是由於種種原因(example,another example),但這些似乎沒有任何東西可以添加到這個特定的問題。
注:帶「shp.OLEFormat.Object.Save」
這是有道理的,但是當我跑你張貼的代碼仍然給我原來的錯誤。我想如果我壓制這個錯誤,它仍然會關閉工作簿,也許這就是我前進的解決方案。我想知道你是否對這種情況有所瞭解? –
看看'xlBook.Close False'有什麼區別。這是我的書中的代碼,我是從2013年開始編寫的,它在測試中運行沒有錯誤。我遺漏了它,因爲我認爲它沒有任何區別,但也許有一個很好的理由我在那裏,原來是:-)不,不知道爲什麼錯誤,確切地說,雖然如果你看看文件Excel應用程序的菜單,你會看到它就像「關閉和更新」。默認值可能爲「True」,Excel無法保存該文件,這可能是導致錯誤的原因。 –
注意:如果它在工作,否則可以通過在On Error Resume Next之前抑制該錯誤,然後在該行後面的On Error GotTo 0處。 –