Excel datenbankzugriff auf Access

- OCinside.de PC Forum
https://www.ocinside.de

-- Software
https://www.forum-inside.de/forums.cgi?forum=17

--- Excel datenbankzugriff auf Access
https://www.forum-inside.de/topic.cgi?forum=17&topic=9098

Ein Ausdruck des Beitrags mit 4 Antworten ergibt bei 3 Antworten pro Seite ca. 2 DIN A4 Seiten. Das entspricht bei 80 g/m² ca. 9.98 Gramm Papier.


-- Veröffentlicht durch OberstHorst am 12:21 am 23. März 2011

Falls die Frage hier doch nochmal aufkommt, habs jetzt wie folgt gemacht:

Code
Sub DAOFromExcelToAccess()
' exports data from the active worksheet to a table in an Access database
' this procedure must be edited before use
Dim db As Database, rs As Recordset, r As Long
   Set db = OpenDatabase("C:\Users\blablubb\Documents\Datenbank1.mdb")
   ' open the database
   Set rs = db.OpenRecordset("Tabelle1", dbOpenDynaset)
   ' get all records in a table
   r = 1 ' the start row in the worksheet
   Do While Len(Range("A" & r).Formula) > 0
   ' repeat until first empty cell in column A
       With rs
           .AddNew ' create a new record
           ' add values to each field in the record
           .Fields("1") = Range("A" & r).Value
           .Fields("2") = Range("B" & r).Value
           .Fields("3") = Range("C" & r).Value
           ' add more fields if necessary...
           .Update ' stores the new record
       End With
       r = r + 1 ' next row
   Loop
   rs.Close
   Set rs = Nothing
   db.Close
   Set db = Nothing
End Sub


Habs irgendwo im Internet gefunden. Es wird eine Verbindung aufgebaut und ein Recordset zusammengebaut und nach Access geschoben. Das funktioniert eigentlich auch ganz gut.

Nur so zur Info....


-- Veröffentlicht durch OberstHorst am 7:26 am 7. Feb. 2011

Vielen Dank schonmal :ocinside:

Werd ich gleich mal ausprobieren :)


-- Veröffentlicht durch ocinside am 13:48 am 4. Feb. 2011

Geh einfach in Excel über Daten -> Externe Daten importieren -> Daten importieren -> neue Abfrage erstellen -> Weitere -> z.B. Microsoft OLE DB ODBC -> bei Verbindung Access auswählen -> OK -> MDB Datenbank auswählen -> Tabelle oder zuvor erstellte Sicht aus Datenbank auswählen -> Fertigstellen -> evtl. noch überarbeiten.
Das kannst du auch direkt als Pivot Tabelle erstellen lassen, nach belieben überarbeiten und die Verbindungsparameter anpassen.
Du kannst natürlich auch direkt auf SQL umstellen und die SQL Anweisungen eintragen, je nachdem was du in Access aufbereitet hast und ob du Daten updaten möchtest.


-- Veröffentlicht durch OberstHorst am 12:01 am 4. Feb. 2011

Hey,

ich habe mal eine ganz allgemeine Frage zur Datenbankverbindung in Excel auf Access.

Ich würde gerne Daten in Excel Verarbeiten/Aufbereiten... was auch immer und danach in eine Access DB laden. Das ganze soll über SQLs geschehen und nicht über irgendwelche Import-Features.

Soweit ich weiß, muss dazu zuerst eine Verbindung zur Datenbank hergestellt werden. Das habe ich jetzt erstmal wie folgt gemacht:

Code
Datei = "C:\tmp\Attribute.mdb"
ADOC.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Datei & ";"


Das macht er schonmal ohne zicken (obs funktioniert werde ich erst bei Abfragen merken ;) ).

Jetzt stellt sich die Frage, wie kann ich damit SQLs auf die Datenbank absetzen? Ich würde zum Beispiel gerne Wissen, ob ein bestimmter Wert (zB ID 4711) bereits in einer Tabelle steht. Wenn nicht, soll dieser Wert hinzugefügt werden.

Hoffe, hier hat sich schonmal jemand mit dem Kram beschäftigt. Leider finde ich nichts bei google ... vermutlich, weil ich nach dem falschen suche oder weils einfach so selbstverständlich ist. ;)

Vielen Dank!


OCinside.de PC Forum
© 2001 - 2024 www.ocinside.de