首頁 > 資料庫 > mysql教程 > 如何提高使用 VBA 將大型 Excel 資料集匯入 MS Access 的效能?

如何提高使用 VBA 將大型 Excel 資料集匯入 MS Access 的效能?

Mary-Kate Olsen
發布: 2025-01-04 17:58:38
原創
476 人瀏覽過

How Can I Improve the Performance of Importing Large Excel Datasets into MS Access Using VBA?

使用Excel VBA 將資料匯入MS Access:效能改進

將資料從Excel 匯出到MS Access 表時,您可能會遇到效能問題處理大量記錄時出現問題。但是,有一些方法可以優化該過程。

提供的 VBA 程式碼循環遍歷每一行並將資料插入 Access 表中,這是一個重複的過程,對於大量資料集來說可能非常耗時。為了提高效能,請考慮使用單一 SQL INSERT 語句進行批次插入。

使用SQL INSERT 優化代碼:

Public Sub DoTrans()

  Set cn = CreateObject("ADODB.Connection")
  dbPath = Application.ActiveWorkbook.Path & "\FDData.mdb"
  dbWb = Application.ActiveWorkbook.FullName
  dbWs = Application.ActiveSheet.Name
  scn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
  dsh = "[" & Application.ActiveSheet.Name & "$]"
  cn.Open scn

  ssql = "INSERT INTO fdFolio ([fdName], [fdOne], [fdTwo]) "
  ssql = ssql & "SELECT * FROM [Excel 8.0;HDR=YES;DATABASE=" & dbWb & "]." & dsh

  cn.Execute ssql

End Sub
登入後複製

實現:

  • 上面的代碼使用以下方式建立了與Access 資料庫的連線ADODB.Connection。
  • 它形成一條 SQL INSERT 語句,將資料插入指定欄位名稱的 fdFolio 表中。
  • Execute 方法執行 SQL 語句,執行批次插入操作。

這種最佳化的程式碼消除了循環遍歷每一行的需要,顯著提高了大型資料集的效能。

以上是如何提高使用 VBA 將大型 Excel 資料集匯入 MS Access 的效能?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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