首頁 > 資料庫 > mysql教程 > 為什麼在 Excel VBA 中存取 SQL 資料庫時出現執行階段錯誤 3704?

為什麼在 Excel VBA 中存取 SQL 資料庫時出現執行階段錯誤 3704?

Mary-Kate Olsen
發布: 2025-01-03 18:15:44
原創
686 人瀏覽過

Why Am I Getting Runtime Error 3704 When Accessing a SQL Database in Excel VBA?

在Excel-VBA 中存取SQL 資料庫:排除執行階段錯誤

嘗試使用VBA 程式碼將SQL 資料庫中的資料擷取到Excel 工作表時,使用者可能會遇到運行時錯誤3704,指示對已關閉物件的操作無效。這通常發生在將資料從記錄集複製到 Excel 工作表的步驟中。

此錯誤的一個潛在原因在於連接字串。確保連接字串包含 Initial Catalog 參數,指定要存取的資料庫的名稱。以下是帶有參數的更新連接字串:

objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=MyDatabase;User ID=abc;Password=abc;"
登入後複製

另一個問題可能是在指定 SQL 指令時使用額外的間接層。為了簡化程式碼並避免錯誤,可以直接使用SQL 語句字串,如下所示:

strSQL = "select * from myTable"
登入後複製

然後使用SQL 語句字串作為命令文字開啟記錄集:

objMyRecordset.Open strSQL
登入後複製

透過解決這些潛在問題並確保連接字串完整且SQL 命令正確執行,您應該能夠使用以下命令成功地將資料從SQL 資料庫擷取到Excel 工作表中VBA。

以上是為什麼在 Excel VBA 中存取 SQL 資料庫時出現執行階段錯誤 3704?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板