VBA Tipp: Text in Textdatei anfügen

Aus DBWiki
Wechseln zu: Navigation, Suche

Anforderung

Ich möchte an eine Textdatei einen weiteren Text anhängen.

Lösung 1

Das geht mit folgender Funktion, die in einem globalen Modul gespeichert wird.

Public Sub TextAnhängen(Text As String, _
                        Dateipfad As String, _
                        Optional Erzeugen As Boolean = False)
 
 ' Quelle: www.dbwiki.net oder www.dbwiki.de
 ' Late Binding: Kein Verweis auf die Microsoft Scriping Runtime notwendig.
 
 ' Text:      Anzuhängender Text
 ' Dateipfad: Pfad und Name der zu beschreibenden Datei
 ' Erzeugen:  Wenn True, dann wird die Datei erzeugt, falls sie nicht existiert
 
 Dim FSO As Object  'FileSystemObject
 Dim TS As Object   'TextStream
 Const ForAppending = 8
 
 Set FSO = CreateObject("Scripting.FileSystemObject")
 Set TS = FSO.OpenTextFile(Dateipfad, ForAppending, Erzeugen)
 
 TS.WriteLine Text
 
 TS.Close
 Set TS = Nothing
 Set FSO = Nothing
 
End Sub

Aufruf

 'Datei erzeugen, falls sie nicht existiert
 Call TextAnhängen("Meine Oma fährt im Hühnerstall Motorad", CurrentProject.Path & "\test.txt", True)


Lösung 2

Public Sub TextAnhängen(Text As String, _
                        Dateipfad As String)
 
 ' Quelle: www.dbwiki.net oder www.dbwiki.de
 
 ' Text:      Anzuhängender Text
 ' Dateipfad: Pfad und Name der zu beschreibenden Datei
 
 Dim C As Long
 
 C = FreeFile
 Open Dateipfad For Append As #C
 Print #C, Text
 Close #C
 
End Sub

Aufruf

 'Datei erzeugen, falls sie nicht existiert
 Call TextAnhängen("Meine Oma fährt im Hühnerstall Motorad", CurrentProject.Path & "\test.txt")

Wiki-Links