Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeile in Textdatei einfügen

Zeile in Textdatei einfügen
17.09.2004 21:28:01
Markus
guten abend zusammen
ich lese per vba Daten aus einer Textdatei ein und verarbeite diese weiter.
zum protokollieren möchte ich das einlesedatum in die textdatei
zurückschreiben und zwar in die erste zeile nicht am ende.
habe zwar das foum nach beiträgen zu meiner frage durchsucht,
aber bin nicht fündig geworden.
vielen dank im voraus für eine idee
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeile in Textdatei einfügen
Reinhard
Hi Markus,
nachdem du die Datei xyz.txt verarbeitet hast,
öffnest du sie wieder mit open xyz.txt for input as #1
dann open kurz.dat for output as #2
print #1 , Date
while not eof(1)
input #1, satz
print #2, satz
wend
close
kill xyz.dat
name kurz.dat as xyz.txt
Nur mal so als Idee...
Gruß
Reinhard
Anzeige
AW: Zeile in Textdatei einfügen
Markus
Hallo Reinhard
Danke für die Idee, ist ein ansatz, an den ich nicht dachte und der sicher klappt.
werde das so umsetzen.
gruß
Markus
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zeile in Textdatei einfügen mit VBA


Schritt-für-Schritt-Anleitung

Um eine Zeile in eine Textdatei einzufügen, während Du mit VBA arbeitest, folge diesen Schritten:

  1. Öffne die Textdatei: Verwende den Open Befehl, um die Datei im Input-Modus zu öffnen.

    Open "xyz.txt" For Input As #1
  2. Erstelle eine temporäre Datei: Öffne eine neue Datei im Output-Modus, um die bearbeiteten Daten zu speichern.

    Open "kurz.dat" For Output As #2
  3. Schreibe das Einlesedatum: Verwende den Print Befehl, um das aktuelle Datum in die temporäre Datei zu schreiben.

    Print #2, Date
  4. Kopiere die bestehenden Daten: Verwende eine Schleife, um die Daten aus der Originaldatei in die temporäre Datei zu kopieren.

    While Not EOF(1)
        Input #1, satz
        Print #2, satz
    Wend
  5. Schließe die Dateien: Vergiss nicht, beide Dateien zu schließen.

    Close #1
    Close #2
  6. Ersetze die Originaldatei: Lösche die alte Datei und benenne die temporäre Datei um.

    Kill "xyz.txt"
    Name "kurz.dat" As "xyz.txt"

Häufige Fehler und Lösungen

  • Fehler beim Öffnen der Datei: Stelle sicher, dass der Dateipfad korrekt ist und die Datei nicht von einem anderen Programm verwendet wird.
  • EOF-Fehler: Überprüfe, ob die Eingabedaten im richtigen Format sind und die Datei nicht leer ist.
  • Schreibberechtigungen: Achte darauf, dass Du Schreibrechte für den Ordner hast, in dem die Datei gespeichert ist.

Alternative Methoden

Eine alternative Methode ist die Verwendung von Excel-Funktionen, um Daten aus einer Textdatei zu importieren und an einer bestimmten Stelle zu bearbeiten. Dies kann mit Power Query realisiert werden, wenn Du eine neuere Version von Excel verwendest.


Praktische Beispiele

Hier ist ein einfaches Beispiel, wie Du die oben genannten Schritte in eine vollständige Subroutine einfügen kannst:

Sub ZeileEinfügen()
    Dim satz As String

    Open "xyz.txt" For Input As #1
    Open "kurz.dat" For Output As #2
    Print #2, Date
    While Not EOF(1)
        Input #1, satz
        Print #2, satz
    Wend
    Close #1
    Close #2
    Kill "xyz.txt"
    Name "kurz.dat" As "xyz.txt"
End Sub

Tipps für Profis

  • Backup: Erstelle immer ein Backup Deiner Dateien, bevor Du Änderungen vornimmst.
  • Fehlerbehandlung: Implementiere On Error Anweisungen, um potenzielle Laufzeitfehler zu handhaben.
  • Performance: Wenn Du mit großen Dateien arbeitest, versuche, die Daten in Arrays zu speichern, bevor Du sie in die Datei schreibst, um die Leistung zu verbessern.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Zeilen gleichzeitig einfügen?
Du kannst eine Schleife verwenden, um mehrere Datensätze nacheinander in die temporäre Datei zu schreiben.

2. Funktioniert das in allen Excel-Versionen?
Die oben beschriebenen Schritte sollten in den meisten Versionen von Excel, die VBA unterstützen, funktionieren, insbesondere in Excel 2010 und später.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige