Discussion:
Daten nach Access aus Excel importieren und aktualisieren
(zu alt für eine Antwort)
zazu
2009-05-06 11:55:01 UTC
Permalink
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!
Henry Habermacher
2009-05-06 12:08:24 UTC
Permalink
Hallo zazu

Bitte verwende hier den vollen Realnamen, wie so üblich. Danke
Post by zazu
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?
Post by zazu
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
Peter Doering
2009-05-06 13:10:22 UTC
Permalink
Hallo,
Post by zazu
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.
Falls die Aktualisierung die Excel-Daten betrifft: www.donkarl.com?FAQ7.22
kennst du?

Gruss - Peter
--
Mitglied im http://www.dbdev.org
FAQ: http://www.donkarl.com
3. SEK Sa/So 16./17.5.2009, Nürnberg http://www.donkarl.com/SEK/
Lesen Sie weiter auf narkive:
Loading...