ich möchte in einer MS ACCESS 2000 Datenbank eine Anfügeabfrage
ausführen.
Dies soll aus einem VBA-Script in MS Excel angestoßen werden.
Kann mir hier jemand mit ein paar Zeilen Beispielcode weiterhelfen?
TIA,
Henning
Sub accessInsertUpdateDelete()
Dim app As Object
Dim sql As String
On Error GoTo fehler
Application.DisplayAlerts = False
Set app = CreateObject("Access.Application")
app.Visible = False
app.OpenCurrentDatabase ("E:\test.mdb")
'/INSERT/
'--------------------------------------------------
sql = "INSERT INTO Kunden(name, vorname) VALUES('Meier','Otto')"
app.DoCmd.runsql sql
'/UPDATE/
'--------------------------------------------------
sql = "UPDATE Kunden SET vorname='Peter' WHERE name='Meier'"
app.DoCmd.runsql sql
'/DELETE/
'--------------------------------------------------
sql = "DELETE FROM Kunden WHERE name='Meier'"
app.DoCmd.runsql sql
fehler:
Application.DisplayAlerts = True
If Not app Is Nothing Then app.Quit
Set app = Nothing
End Sub
Hab' in einer alten Sicherung auch noch die ADO-Version gefunden. Die
benᅵtigt aber einen Verweis auf die "Microsoft ActiveX Data Objects"
Peter
Sub appendAccessWithADO()
'VERWEIS: Microsoft ActiveX Data Objects
Dim conn As New ADODB.Connection
Dim cmd As New ADODB.Command
conn.Provider = "Microsoft.Jet.OLEDB.4.0"
conn.ConnectionString = "Data Source=E:\test.mdb"
conn.Open
cmd.ActiveConnection = conn
'/gespeicherte Abfrage ausfᅵhren/
cmd.CommandText = "appKunden"
cmd.Execute
'/SQL-Kommando ausfᅵhren/
cmd.CommandText = "INSERT INTO Kunden(name, vorname) " & _
"VALUES('Meier','Otto')"
cmd.Execute
End Sub