Heim >Datenbank >MySQL-Tutorial >Wie kann Excel VBA Massendaten in MS Access einfügen, um den Datenexport zu beschleunigen?

Wie kann Excel VBA Massendaten in MS Access einfügen, um den Datenexport zu beschleunigen?

Patricia Arquette
Patricia ArquetteOriginal
2025-01-05 06:25:43676Durchsuche

How Can Excel VBA Bulk Insert Data into MS Access for Faster Data Export?

Verwenden Sie Excel VBA, um Daten schnell und effizient in eine MS Access-Tabelle zu exportieren

Ursprünglich nutzte Ihr Code Schleifen, um Daten aus einem Excel-Arbeitsblatt in eine MS Access-Tabelle zu exportieren. Während dieser Ansatz für relativ kleine Datensätze sinnvoll ist, wird er bei der Verarbeitung großer Datenmengen weniger effizient.

Um diese Einschränkung zu überwinden, haben Sie nach einer alternativen Methode gesucht, die eine iterative Verarbeitung vermeidet. Bei der Erkundung sind Sie auf eine Lösung gestoßen, die eine einzige SQL-INSERT-Anweisung verwendet, um Daten in großen Mengen in die Access-Tabelle einzufügen.

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

Dieser Ansatz hat die Exportzeit erheblich verkürzt, was sich in Ihrer Beobachtung zeigt, dass 27.648 Datensätze eingefügt wurden in die Access-Tabelle in nur 3 Sekunden.

Während Sie beim Angeben bestimmter Feldnamen auf Schwierigkeiten gestoßen sind, anstatt sich auf „SELECT *“ zu verlassen, tun Sie dies weiterhin Erkunden Sie verschiedene Methoden, um das gewünschte Ergebnis zu erzielen.

Das obige ist der detaillierte Inhalt vonWie kann Excel VBA Massendaten in MS Access einfügen, um den Datenexport zu beschleunigen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn