Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

A97 - Text-File importieren, umwandlen in die Tbl speichern





Frage

Hallo liebe Experten, ich habe folgendes Problem. GEGEBEN: a) In einem bestimmten Verzeichnis c:/daten habe ich jeden Tag eine Text-Datei mit einem Namen meinedatei20031008.txt. Das heißt der dateiname ändert sich jeden Tag nur um das Datum. b) Diese Textdatei besteht aus einer konstanten Anzahl von Spalten mit semikolongetrennten Daten. Einzelne Zellen sind mit Zahlen oder Text gefüllt. Ist eine Zelle nicht gefüllt, steht dort ein $-Zeichen. Beispiel: Feld1; Feld2; Feld3; Feld4; Feld5 Bla; 4567; $;$; test WAS ICH WILL: Ich möchte in einem Formular einen Button haben, der beim Klicken folgendes macht: Daten aus dieser Textdatei jeden Tag einliest, in eine Access-Tabelle importiert und die "$"-Zeichen durch Leerzeichenfolge (also "") ersetzt. Vielen Dank und Gruß mb

Antwort 1 von LowNoise

...in einem Formular... heisst das das Du das ganze in eine Access Datenbank haben willst die dann anschliessend ein Formular generiert oder soll das ganze einfach in eine Excel Tabelle eingelesen werden?

Antwort 2 von martin boll

LowNoise,

richtig, ich will das schon in einer Access-Tabelle speichern.

mb

Antwort 3 von martin boll

Hallo Leute,

ich habe das Importieren mit einer Funktion und DoCmd.TransferText hingekriegt.

Das Problem mit dem Umwandeln von $-Zeichen in ""-Zeichen bleibt aber noch!

Hat jemand eine Idee?
Vielen Dank

mb

Antwort 4 von DatenKay

Hi Martin,
sind die $-Zeichen immer in der/den gleichen Spalte(n) oder können sie an beliebiger Stelle der DS in der Tabelle auftauchen? Wie viele Spalten enthält die Tabelle? Das entscheidet nämlich darüber, ob man das Problem mit einer einfachen Aktualisierungsabfrage erschlagen kann oder ob eine Funktion erstellt werden muss, die jede Spalte der Tabelle nacheinander nach $-Zeichen abklappert und diese ersetzt.

Gruß,
DatenKay

Antwort 5 von martin boll

Hi DatenKay,

die Tabelle enthält insgesamt 30 Spalten, die $-Zeichen können in jeder beliebiger Zelle eines Datensatzes erscheinen.

Man muß sich so vorstellen: bei dieser Tabelle handelt sich um die Anzeige von Änderungen zwischen zwei Tagen. Ändert sich ein Feldinhalt, so steht da ein/e Text/Zahl, ändert sich nichts, so steht ein $-Zeichen drin.

Gruß

M

Antwort 6 von DatenKay

Hi Martin,

eine Lösung, die keinen Programmieraufwand wohl aber einen geringen täglichen Arbeitsaufwand bedeutet ist:

öffne Deine Tabelle in der Datenblattansicht und verwende die Accessfunktion "Suchen/Ersetzen" (Fernglas in der Menuzeile).
Hört sich platt an (ist es ja auch) kostet aber nicht viel Zeit.

Wenn das so nicht reicht, weil es unbedingt automatisiert werden muss, dann heisst es fleißig programmieren (ich grübel 'mal druber nach)

Gruß,
DatenKay

Antwort 7 von Peter K

Hi,

falls die $ Zeichen als einzige Zeichen in einem Feld stehen, sollte man das Problem mit nem SQL-Statement erschlagen koennen...

Etwa so:

Update TABLENAME set FELDNAME1 = 'leer' where FELDNAME1 = '$';

Hope this helps

Peter

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: