Hallo Munich,
ich erzeuge mir heute abend oder morgen eine Access-Datei, ich glaube die heissen .mdb. Dann erzeuge ich eine Abfrage (query) in Excel und lass dabei den Rekorder laufen. Wenn ich alles richtig verstanden habe wird das aufgezeichnet und im Code ist wohl ein Select-Befahl der z.B. bestimmte Spalten oder Bereiche in der Access-Tabelle auswählt
Dies scheint zu klappen, aber du möchtest mittels Excel-Query bzw VBA in einer Access-Datei Einträge anfügen bzw. löschen und der Rekorder zeichnet dieses nicht auf.
Wenn dies dein Anliegen ist so kriege ich das sicher hin, denn ich habe die CD die in der nachfolgenden Beschreibung als „Vollversion“ genannt wird. Hatte PC-Probleme die mich zur Festplattenformatierung zwangen und rüste Zug um Zug meinen PC wieder auf, die CD kommt demnächst wieder drauf. Und dann kann ich dir den Code schicken und wir finden zusammen sicher auch 'ne Lösung um Einträge zu löschen, habe da jetzt nur gesehen dass man Einträge anfügen kann…
Gruß
Reinhard
Die Beispielarbeitsmappe ist nur in der Vollversion verfügbar
Hier können Sie das Tutorial bestellen
Um Datensätze aus einer Datenbank lesen bzw. in eine Datenbank schreiben zu können, muss das Programm Microsoft Query installiert sein. Eine Schritt-für-Schritt-Anleitung zur Installation finden Sie hier:
Microsoft Query
Mit Microsoft Query werden auch die Treiber für Data Access Objects (DAO) installiert und stehen Ihnen fortan zur Verfügung.
Um den Code nutzen zu können, müssen Sie in der Entwicklungsumgebung einen Verweis zu DAO erstellen. Eine Schritt-für-Schritt-Anleitzung zur Erstellung finden Sie hier:
Verweis erstellen
Ziel des nachfolgenden Beispiel ist es, Datensätze, die in eine Access-Datenbank geschrieben wurden, über die Standard-Excel-Datenmaske zu editieren, neue hinzuzufügen, alte zu löschen und die Änderungen wieder nach Access zu exportieren.
*
Daten in eine Access-Datenbank einlesen
o Prozedur: dbWriteData
o Art: Sub
o Modul: Standard
o Zweck: Daten in eine Access-Datenbank schreiben
o Ablaufbeschreibung:
- Variablendeklaration
- Objektvariable mit dem Quelldatenblatt belegen
- Integer-Variable mit der Spaltenanzahl belegen
- String-Variable mit Dateipfad und Dateiname belegen
- String-Variable mit dem Tabellennamen belegen
- Fehlerroutine, falls die Zieldatenbank noch nicht existiert
- Zieldatenbank, falls vorhanden, löschen
- Fehlerroutine Ende
- Die Variable für die Datenfelder gem. der Anzahl der Spalten redimensionieren
- Datenbank erstellen
- Datentabelle erstellen
- Die Datenfelde belegen
- Die Tabelle der Datenbank hinzufügen
- Die Datenbank schließen
- Die Prozedur zum Einlesen der Datensätze aufrufen
o Code:
Der Code ist nur in der Vollversion verfügbar
Hier können Sie das Tutorial bestellen
*
Datensätze in die Access-Datenbank einlesen
o Prozedur: WriteData
o Art: Sub
o Modul: Standard
o Zweck: Datensätze in eine Access-Datenbank schreiben
o Ablaufbeschreibung:
- Variablendeklaration
- Datenbank öffnen
- Datentabelle öffnen
- Startzeile festlegen
- Schleife über alle Zeilen bilden
- Neuen Datensatz hinzufügen
- Startspalte festlegen
- Schleife über alle Spalten bilden
- Datenfelder mit den Zellinhalten belegen
- Tabelle aktualisieren
- Datenbank schließen
o Code:
Der Code ist nur in der Vollversion verfügbar
Hier können Sie das Tutorial bestellen
*
Datensätze aus einer Access-Datenbank einlesen
o Prozedur: dbReadData
o Art: Sub
o Modul: Standard
o Zweck: Datensätze aus einer Access-Datenbank einlesen
o Ablaufbeschreibung:
- Variablendeklaration
- Objektvariable mit dem Zieldatenblatt belegen
- String-Variable mit Dateipfad und Dateiname belegen
- String-Variable mit dem Tabellennamen belegen
- Prüfung, ob die Quelldatenbank vorhanden ist
- Wenn nein, Warnmeldung und Ausstieg
- Zielblatt leeren
- Zellen als Text formatieren
- Datenbank öffnen
- In einer Schleife die Spaltenköpfe einlesen
- Datentabelle öffnen
- Erste Zielzeile festlegen
- Schleife über alle Datensätze bilden
- Zeilenzähler eins hochzählen
- Schleife über alle Spalten bilden
- Datensatz einlesen
- Datenbank schließen
- Spaltenbreite optimieren
- Erste Zeile mit dem Schriftattribut Bold belegen
- Excel-Datenmaske aufrufen
o Code:
Der Code ist nur in der Vollversion verfügbar
Hier können Sie das Tutorial bestellen