Hallo Hans-Werner,

wer lesen kann, ist klar im Vorteil - und kaum macht man's richtig, klappt's!

Herzlichen Dank! Mein Problem ist gelöst.

So was kommt von sowas, wenn man nur flüchtig liest und meint, es müsste schon alles passen ("For Input" ist doch bestimmt richtig, wenn ich da was reinschreiben will, oder? Und wozu brauche ich ein Print, wenn ich schon ein Write gefunden habe? Das tut doch garantiert das, was ich denke!).

Und die LibreOffice-Hilfe ist mittlerweile besser, als ich gedacht habe. (Da habe ich schon lange nicht mehr reingeschaut, weil ich oft nicht gefunden habe, was ich suchte.) Und richtig gefreut haben mich die Syntaxdiagramme!!

Dank und Gruß
Guido


Am 01.03.24 um 12:15 schrieb OoOHWHOoO:

Hallo Guido,

nimm »Print«, dann ohne ". Bei »Write« werden immer " gesetzt.

»Input« öffnet eine Datei zum LESEN, »Output« zum ÜBER-SCHREIBEN und »Append« zum FORT-SCHREIBEN !

Steht alles in der LO-Hilfe !

Sub schreibwas
Dim Textdatei as String
Dim n as Integer

Textdatei=ConvertToURL("E:\TMP\MeineDatei.txt")
n  =  FreeFile()
'''''Open Textdatei For Append As #n
Open Textdatei For Output As #n
'''''Write #n, "Das ist Text."
Print #n, "Das ist Text 1."
Print #n, "Das ist Text 2."
Print #n, "Das ist Text 3."
Close #n
end sub

Grüße
Hans-Werner ;-))

------ Originalnachricht ------
Von "Guido Dischinger" <di...@posteo.de>
An users@de.libreoffice.org
Datum 01.03.2024 11:41:12
Betreff [de-users] Makro-Befehl "Write" schreibt unerwünschte Anführungszeichen

Hallo zusammen!

Mit einem Makro möchte ich Text (das sollen später mal Suchergebnisse sein) in eine Datei schreiben. Dazu habe ich im tollen Buch von Andrew Pitonyak (genauer: in der schönen Übersetzung von Volker Lenhardt) den Befehl "Write #n, String" gefunden und in folgendem Makro ausprobiert:

---
Sub schreibwas
Dim Textdatei as String
Dim n as Integer

Textdatei=ConvertToURL("/home/Benutzer/MeineDatei")
n  =  FreeFile()
Open Textdatei For Append As #n
Write #n, "Das ist Text."
Close #n
end sub
---

Wenn ich dieses Makro (in LibreOffice 7.6.4.1 unter Debian 12 Bookworm) laufen lasse, steht in MeineDatei der folgende Text:
    "Das ist ein Text."

Erwartet hätte ich das ohne Anführungszeichen:

    Das ist ein Text.

Wie kann man dem Write-Befehl abgewöhnen, die Anführungszeichen in die Datei zu schreiben?

(Problem am Rande: Warum führt es zu einem Laufzeitfehler beim Befehl "Close #n", wenn ich "For Input" statt "For Append" schreibe?)

Beste Grüße von
Guido

-- Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

--
Liste abmelden mit E-Mail an: users+unsubscr...@de.libreoffice.org
Probleme? 
https://de.libreoffice.org/hilfe-kontakt/mailing-listen/abmeldung-liste/
Tipps zu Listenmails: https://wiki.documentfoundation.org/Netiquette/de
Listenarchiv: https://listarchives.libreoffice.org/de/users/
Datenschutzerklärung: https://www.documentfoundation.org/privacy

Antwort per Email an