ich versuche, aus Word-VBA Daten aus einer DB abzurufen, die auf einem Microsoft SQL-Server läuft.
Welche Befehle sind da in VBA erforderlich?
Ich finde zwar hier und da fragmenthafte Hinweise, aber der Zusammenhang ist mir nicht klar.
Auch ist mir der Befehl für die Verbindung mit der DB nicht ganz klar.
Die Datenbank heißt ‚stamm‘, die Tabelle ‚kunden‘, und die Felder, die ich abrufen will ‚kdnr‘ und ‚kdname‘
Es gibt hunderte Möglichkeite, per Code an Datenbank heranzukommen…
Da ich eigentlich rein VB-Entwickler bin bevorzuge ich die Option ADO-(Microsoft ActiveX Data Object)-Library. Diese mußt in Dein VBA-Makro linken: Menü Extras/Verweise
Dann folgender Code, um sich zu Connecten und Daten zu holen:
Public Function DB\_CONNECT() As String (oder ADODB.Recordset)
Dim adoCnn As New ADODB.Connection
Dim adoRst As New ADODB.Recordset
adoCnn.ConnectionString = "provider=MSDASQL;" & \_
"driver={SQL Server};" & \_
"server=meinserver;" & \_
"uid=ich;" & \_
"pwd=geheim;" & \_
"database=stamm"
adoCnn.Open
adoRst.Open "SELECT kdnr, kdrname FROM kunden", \_
adoCnn, adOpenForwardOnly
Set DB\_OPEN = adoRst("kdnr") & "-" & adoRst("kdrname")
(oder Set DB\_OPEN = adoRst)
adoRst.Close
adoCnn.Close
Set adoRst = Nothing
Set adoCnn = Nothing
End Function
Wie Du die Daten darstellen, sortieren oder sonst was willst ist nicht weiter schwer.