Dies ist ein VBA Skript um Dateien von einer Excel-Tabelle in den Microsoft SQL Server zu importieren. Bevor das Skript läuft muss im VBA-Editor unter Extras -> Verweise „Microsoft ActiveX Data Objects“ als Bibliothek ausgewählt werden, damit ADODB.* zur Verfügung steht.
Private Sub CommandButton1_Click()
' Die Datenbankverbindung
Dim Cn As New ADODB.Connection
Dim Rs As New ADODB.Recordset
Dim letzteZeile As Integer
Dim i As Integer
' Die beiden Felder material, prdha
Dim materialnr As String
Dim prdha As String
' Finde die letzte Zeile
letzteZeile = Cells.Find("*", [A1], , , xlByRows, xlPrevious).Row + 1
' Provider OLEDB Provider
Cn.Provider = "SQLOLEDB.1"
' Connectionstring
Cn.ConnectionString = "Password=meinpasswort;" & _
"Persist Security Info=True;" & _
"User ID=meinuser;" & _
"Initial Catalog=meinedatenbank;" & _
"Data Source=SERERNAMEODERIPADRESSE"
' Verbindung öffnen
Cn.Open
For i = 1 To letzteZeile
materialnr = Tabelle1.Cells(i, 1)
prdha = Tabelle1.Cells(i, 2)
Cn.Execute ("INSERT INTO prdha(material, prdha) " & _
"VALUES('" + materialnr + "','" + prdha + "')")
Next i
' Verbindung schließen
Cn.Close
End Sub