Discussion:
Probleme beim Datenimport per VBA
(zu alt für eine Antwort)
Markus Wagner
2007-08-29 19:06:01 UTC
Permalink
Hallo NG,

ich habe folgendes Problem:
Ich möchte in eine Tabelle bei mir in der Datenbank Daten aus einem csv-File
importieren.

DoCmd.TransferText acImportDelim, , "grdImportExcel", strPfadDatei, True

Das funktioniert bei mir unter Access 2000 (9.03821 SR-1) einwandfrei.
Mit Access 2007 funktioniert es auch.

Wenn ich diese Funktion aber unter Access 2002 (10.2627.2625) oder Access
2003 (11.5614.5606) aufrufe, bekomme ich folgende Meldung:

Run-time error '2391'
Das Feld 'kunr,anrede,vorname,nachname,zusatz,strasse,landnr,plz,ort,post'
gibt es in der Zieltabelle 'tbImport' nicht.

Komischerweise gibt es weder in der zu importierenden Datei noch in der
tbImport ein Feld 'post', denn das Feld heist postfach. Und dieses gibt es
sowohl in der Datei als auch in der Tabelle.
Habe dann das Feld postfach mal aus Datei und Tabelle entfernt. Dann ist das
nächste Feld plötzlich das Problem.

Wenn ich die Datei von Hand exportiere und in die gleiche Zieltabelle
schreibe, dann funktioniert es auch.

Kann es sein dass es am fehlenden ServicePack liegt ? Hat jemand nen Tip was
ich sonst noch tun kann ?

Liebe Grüße
Markus
Peter Doering
2007-08-29 19:50:03 UTC
Permalink
Hallo,
Post by Markus Wagner
Ich möchte in eine Tabelle bei mir in der Datenbank Daten aus einem csv-File
importieren.
DoCmd.TransferText acImportDelim, , "grdImportExcel", strPfadDatei, True
Das funktioniert bei mir unter Access 2000 (9.03821 SR-1) einwandfrei.
Mit Access 2007 funktioniert es auch.
Wenn ich diese Funktion aber unter Access 2002 (10.2627.2625) oder Access
Run-time error '2391'
Das Feld 'kunr,anrede,vorname,nachname,zusatz,strasse,landnr,plz,ort,post'
gibt es in der Zieltabelle 'tbImport' nicht.
Sieht wie ein Problem mit regionalen Einstellungen, konkret, dem
Listentrennzeichen aus, siehe Systemsteuerung - Regionaleinstellungen -
Anpassen - Listentrennzeichen. Du kannst eine Importspezifikation anlegen,
in der das Komma als Listentrennzeichen angeben und beim Import verwenden:

DoCmd.TransferText acImportDelim, "DeineImportSpezification", _
"grdImportExcel", strPfadDatei, True
Post by Markus Wagner
Komischerweise gibt es weder in der zu importierenden Datei noch in der
tbImport ein Feld 'post', denn das Feld heist postfach. Und dieses gibt es
sowohl in der Datei als auch in der Tabelle.
Habe dann das Feld postfach mal aus Datei und Tabelle entfernt. Dann ist das
nächste Feld plötzlich das Problem.
Das liegt daran, dass wegen des "fehlenden" Trennzeichens die ersten 63
Zeichen als Feldnamen angenommen werden, und die sind halt bei 'post'
erreicht ;-)
Post by Markus Wagner
Wenn ich die Datei von Hand exportiere und in die gleiche Zieltabelle
schreibe, dann funktioniert es auch.
Weil du dann das Trennzeichen vorgibst.

Gruss - Peter
--
Ich beantworte keine Fragen per Email.
Mitglied im http://www.dbdev.org
FAQ: http://www.donkarl.com
Loading...