嘗試使用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中文網其他相關文章!