Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Mit VBA Eintrag in .txt-Datei
#1
Liebe Gemeinde,

ein neuer Tag, eine neue Herausforderung.
Ich möchte mittels VBA eine .txt-datei erstellen
und mit Text befüllen. Das funktioniert grundsätzlich.
Probleme macht mit aber der nachfolgende Text.





Dieser soll eingetragen werden.
Leider bekomme ich Fehlermeldungen. Ich gehe davon aus, dass es an den " im Text selber liegt und habe bereits 
doppelte " ausprobiert. Ohne Erfolg. 

Der Code dazu sieht so aus. 
Code:
Sub txt_erzeugen()

Dim strKopf As String
Dim strFuss As String


datei = "Y:\Eigene Dateien\Test\Test\test.txt"

Open datei For Output As #1

'Kopf'

strKopf = "<?xml version="1.0" encoding="UTF-8"?> <kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2"> <Document id="1">"

'Fuss
strFuss = "CStr("</Document>") CStr("</kml>")"


Write #1, strKopf

Write #1, strFuss

Close #1

End Sub


Weiß wer Rat?

Wieder vielen Dank im Voraus.
Antworten Top
#2
Hallo, :19:

brauchst du die ", dann so: :21:


Code:
'Kopf'
strKopf = "<?xml version=""1.0"" encoding=""UTF-8""?> <kml xmlns=""http://www.opengis.net/kml/2.2"" xmlns:gx=""http://www.google.com/kml/ext/2.2""> <Document id=""1"">"
'Fuss
strFuss = "CStr(""</Document>"") CStr(""</kml>"")"
Print #1, strKopf
Print #1, strFuss
Close #1

Sonst so: :21:


Code:
'Kopf'
strKopf = "<?xml version=1.0 encoding=UTF-8?> <kml xmlns=http://www.opengis.net/kml/2.2 xmlns:gx=http://www.google.com/kml/ext/2.2> <Document id=1>"
'Fuss
strFuss = "CStr(</Document>) CStr(</kml>)"
Print #1, strKopf
Print #1, strFuss
Close #1
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • tmessers
Antworten Top
#3
Danke für die schnelle Antwort.
Das klappt gut.

Wie bekomme ich in der .txt date die " am Anfang und Ende des Strings weg?
Antworten Top
#4
Hallo, :19:

bei mir sind am Anfang und Ende keine Anführungszeichen. :21:
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • tmessers
Antworten Top
#5
@Case: Der OP verwendet weiter write und nicht print
https://docs.microsoft.com/de-de/office/...estatement
Zitat:Im Gegensatz zu der Print # -Anweisung fügt die Write # -Anweisung beim Schreiben in die Datei Kommas zwischen Elementen und Zeichenfolgen in Anführungszeichen ein. Sie müssen nicht explizite Trennzeichen in die Liste aufnehmen. Write # einen Zeilenumbruchzeichen eingefügt wurde d. h., einem Zeilenumbruch (Chr(13) + Chr(10)), nach dem das letzte Zeichen in Outputlist in die Datei geschrieben.
[-] Folgende(r) 1 Nutzer sagt Danke an Storax für diesen Beitrag:
  • tmessers
Antworten Top
#6
Genau das war der Fehler.

Wie bekomme ich in diesen String eine Variable eingebaut, die nach der 
Print-Anweisung in „ steht? zB. die  aus meinem ersten Post.
Antworten Top
#7
Hallo, :19:

probiere es mal so der Spur nach: :21:

Code:
'......
Dim strTMP As String
strTMP = """Das auch noch"""
'......
'......
'......
Print #1, strFuss & " " & strTMP
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • tmessers
Antworten Top
#8
Danke für Eure Unterstützung.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste