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

Textdatei per VBA erzeugen

Forumthread: Textdatei per VBA erzeugen

Textdatei per VBA erzeugen
06.02.2003 14:56:12
mbek
Hallo Zusammen,
ich folgendes Problem bei der Erzeugung von Textdatei per Excel VBA.

dim bla
Open "c:\DATEI1.txt" For Output As #1
bla = "Hallo Welt"
Write #1, bla
Close #1, bla

im Ergebnis von Textdatei ist immer mit Anführungszeichen (Anfang und Ende)
es sieht so aus:
"Hallo Welt"

ich möchte kein Anführungszeichen auf meine Textdatei haben.
könnt ihr mir bitte helfen ?
danke

gruß
Mbek

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Textdatei per VBA erzeugen
06.02.2003 15:01:10
Micahel Scheffler

Hallo,

Gruß

Micha

Re: Textdatei per VBA erzeugen
06.02.2003 15:22:09
mbek

jawoooohlll...es funktioniert

danke micha

gruß
mbek

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Textdatei per VBA erzeugen


Schritt-für-Schritt-Anleitung

Um eine Textdatei mit Excel VBA zu erstellen, kannst du die folgenden Schritte befolgen:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub TextdateiErstellen()
       Dim bla As String
       Open "C:\DATEI1.txt" For Output As #1
       bla = "Hallo Welt"
       Print #1, bla  ' Verwendung von Print anstelle von Write
       Close #1
    End Sub
  4. Stelle sicher, dass der Pfad zur Datei korrekt ist und die Datei nicht bereits geöffnet ist.

  5. Führe das Makro aus, indem du auf das grüne Dreieck im VBA-Editor klickst.

Mit diesem Code wird eine Textdatei ohne Anführungszeichen erstellt.


Häufige Fehler und Lösungen

Fehler: Anführungszeichen um den Text in der Textdatei.

  • Lösung: Verwende Print #1, bla anstelle von Write #1, bla, da Write den Text in Anführungszeichen setzt.

Fehler: Der Pfad zur Datei ist ungültig.

  • Lösung: Überprüfe den Pfad und stelle sicher, dass du Schreibrechte für den angegebenen Ordner hast.

Alternative Methoden

Eine weitere Möglichkeit, eine Textdatei zu erstellen, ist die Verwendung von FileSystemObject. Hier ist ein Beispiel:

Sub TextdateiMitFSO()
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Dim txtFile As Object
    Set txtFile = fso.CreateTextFile("C:\DATEI2.txt", True)
    txtFile.WriteLine "Hallo Welt"
    txtFile.Close
End Sub

Diese Methode bietet mehr Flexibilität und Kontrolle beim Schreiben in die Datei.


Praktische Beispiele

Angenommen, du möchtest eine Liste von Werten aus einem Excel-Blatt in eine Textdatei schreiben. Hier ist ein Beispiel:

Sub ExcelDatenInTextdateiSchreiben()
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Datenblatt")
    Dim rng As Range
    Set rng = ws.Range("A1:A10")

    Dim txtFile As Object
    Set txtFile = CreateObject("Scripting.FileSystemObject").CreateTextFile("C:\Daten.txt", True)

    Dim cell As Range
    For Each cell In rng
        txtFile.WriteLine cell.Value
    Next cell

    txtFile.Close
End Sub

Dieses Makro schreibt die Werte aus dem Bereich A1:A10 in eine Textdatei.


Tipps für Profis

  • Nutze Fehlerbehandlungsmechanismen wie On Error Resume Next, um Probleme beim Schreiben in Dateien zu vermeiden.
  • Teste den Code in einer sicheren Umgebung, um Datenverlust zu vermeiden.
  • Verwende Append anstelle von Output, wenn du Daten zu einer bestehenden Datei hinzufügen möchtest.

FAQ: Häufige Fragen

1. Wie kann ich eine Textdatei mit UTF-8-Kodierung erstellen?
Um eine Textdatei mit UTF-8-Kodierung zu erstellen, kannst du die ADODB.Stream-Objekte verwenden.

2. Kann ich mehrere Werte in einer Zeile schreiben?
Ja, du kannst mehrere Werte durch Kommas trennen. Zum Beispiel:

txtFile.WriteLine "Wert1, Wert2, Wert3"

3. Wie kann ich den Inhalt einer bestehenden Textdatei überschreiben?
Verwende Open "C:\DATEI.txt" For Output As #1, um den Inhalt zu überschreiben. Achte darauf, dass die Datei nicht geöffnet ist.

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