首頁 > 資料庫 > mysql教程 > 如何修復在 Excel VBA 中存取 SQL 資料庫時出現的執行時間錯誤 3704?

如何修復在 Excel VBA 中存取 SQL 資料庫時出現的執行時間錯誤 3704?

Susan Sarandon
發布: 2025-01-04 08:27:39
原創
275 人瀏覽過

How to Fix Run-time Error 3704 When Accessing SQL Databases in Excel VBA?

在Excel-VBA 中存取SQL 資料庫:解決執行階段錯誤3704

使用VBA 程式碼從SQL 資料庫存取資料時,嘗試時可能會遇到錯誤將資料從記錄集複製到Excel。具體來說,當關閉記錄集物件時,會出現錯誤「運行時錯誤 3704:物件關閉時不允許操作」。

要解決此問題:

  1. 驗證資料庫可存取性:確保資料庫可以透過VBA存取。確保資料庫正在運行,連接字串正確,並且使用者俱有存取資料庫所需的權限。
  2. 將初始目錄新增至連接字串:修改連接字串以包含初始目錄,代表資料庫名稱。例如:
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=MyDatabase;User ID=abc;Password=abc;"
登入後複製
  1. 直接開啟記錄集:您可以使用 SQL 語句直接開啟記錄集,而不是使用 ADODB.Command 物件。以下是更新的程式碼片段:
Const adCmdText As Long = 1
Dim strSQL As String

... // Other code above

' Open Recordset'
Set objMyRecordset.ActiveConnection = objMyConn
strSQL = "select * from myTable"
objMyRecordset.Open strSQL            

... // Rest of the code below
登入後複製

透過進行這些調整,您應該能夠使用 VBA 成功將資料從 SQL 資料庫複製到 Excel,而不會遇到執行時間錯誤 3704。

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

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