Daten nach Access aus Excel importieren und aktualisieren

06/05/2009 - 13:55 von zazu | Report spam
Hallo und Guten Tag,
ich möchte Daten von Excel nach Access importieren und aktualisieren(z. B.
Personaldatenbank mit Anschriften der Mitarbeiter). Ich habe schon mehreres
probiert, es will aber nicht wirklich klappen. Der Primàrschlüsel liegt auf
der Personalnummer, da sie in der Access-Datenbank eindeutig zu
identifizieren ist. Die Spalten sind nahezu identisch beschriftet und
weitestgehend einander zuzuordnen. Wie kann ich erreichen, dass aus der
aktuelleren Excel-Tabelle die Daten mit der Access-Tabelle verglichen, bei
Änderung aktualisiert und bei neu hinzugekommenen Mitarbeitern neue
Datensàtze mit den entsprechenden Daten angelegt werden.
Für eine detailierte Antwort bin ich dankbar, denn ich bin in Access nicht
so versiert.
Vielen Dank!
 

Lesen sie die antworten

#1 Henry Habermacher
06/05/2009 - 14:08 | Warnen spam
Hallo zazu

Bitte verwende hier den vollen Realnamen, wie so üblich. Danke

zazu wrote:
ich möchte Daten von Excel nach Access importieren und aktualisieren(z. B.
Personaldatenbank mit Anschriften der Mitarbeiter). Ich habe schon
mehreres probiert, es will aber nicht wirklich klappen. Der



Wieso bindest Du Das Excel Sheet nicht einfach nur ein?

Primàrschlüsel liegt auf der Personalnummer, da sie in der
Access-Datenbank eindeutig zu identifizieren ist. Die Spalten sind
nahezu identisch beschriftet und weitestgehend einander zuzuordnen. Wie
kann ich erreichen, dass aus der aktuelleren Excel-Tabelle die Daten mit
der Access-Tabelle verglichen, bei Änderung aktualisiert und bei neu
hinzugekommenen Mitarbeitern neue Datensàtze mit den entsprechenden Daten
angelegt werden.




Markiere zurest mal alle Mitarbeiter als ausgeschieden.
Dann mach mal eine Auswahl Abfrage bei der Du das Excel Sheet mit der
Mitarbeitertabelle verjoinst. Nun hast Du alle, die identisch sind. Diese
kannst Du nun in eine aktualisierungsabfrage umwandeln. Nicht vergessen bei
diesen das Ausgeschiedenkennzeichen auf nicht ausgeschieden zu setzen.
Schliesslich machst Du eine Abfrage auf dem Excel Sheet, welche folgende
WHERE Bedinung hat:
WHERE XLSMitarb.PErsonalNr NOT IN (SELECT PersonalNr From Personal)
Diese Abfrage wandelst Du nu in eine Einfügeabfrage um und setzt dabei das
Ausgeschieden Kennzeichen ebenfalls auf nicht ausgeschieden.

Führe dann einfach diese 3 Abfragen hintereinander ab, z.B. über
Set db = CurrentDB
db.Execute cb.QueryDefs("AlleAusscheiden").SQL, dbFailOnError
db.Execute cb.QueryDefs("AktiveAktualsieren").SQL, dbFailOnError
db.Execute cb.QueryDefs("NeueHinzufügen").SQL, dbFailOnError
Set db = Nothing

Wie man Excel-Sheets in Access einbindet, rsp. wie man Tabellen neu
einbindet findest Du in der FAQ.

HTH
Henry



Los geht's: SEK3 Anmeldung bei www.donkarl.com/?sek
Microsoft MVP Office Access
Keine E-Mails auf Postings in NGs. Danke.
Access FAQ www.donkarl.com

Ähnliche fragen