Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VBA: Access-Abfrage aus Excel starten

378 views
Skip to first unread message

kielhd

unread,
Dec 22, 2009, 5:32:56 AM12/22/09
to
Hi NG,

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

Peter Schleif

unread,
Dec 22, 2009, 6:30:01 AM12/22/09
to
kielhd schrieb am 22.12.2009 11:32 Uhr:
>
> 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?

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

Peter Schleif

unread,
Dec 22, 2009, 7:14:34 AM12/22/09
to
kielhd schrieb am 22.12.2009 11:32 Uhr:
>
> 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?

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

0 new messages