Seite 1 von 1

BASIC-Laufzeitfehler

Verfasst: So 19. Nov 2023, 17:43
von helmut25
Hallo,
habe gerade mal ein PDF-Dokument geladen und folgenden Code als Makro eingegeben und laufen lassen
(Quelle: https://wiki.documentfoundation.org/Doc ... _Documents)
In der Zeile mit "Enum = Doc.Text.createEnumeration" ist ein Laufzeitfehler aufgetreten:
"Eigenschaft oder Methode nicht gefunden: Text"

Was läuft da falsch?

Dim Doc As Object
Dim Enum As Object
Dim TextElement As Object

Doc = ThisComponent
Enum = Doc.Text.createEnumeration

While Enum.hasMoreElements
TextElement = Enum.nextElement

If TextElement.supportsService("com.sun.star.text.Paragraph") Then
TextElement.String = Replace(TextElement.String, "you", "U")
TextElement.String = Replace(TextElement.String, "too", "2")
TextElement.String = Replace(TextElement.String, "for", "4")
End If

Wend

Re: BASIC-Laufzeitfehler

Verfasst: Mo 20. Nov 2023, 13:39
von karolus
Hallo
Was läuft da falsch
Ein wie auch immer geladenes .pdf-Dokument ist halt kein writer-Dokument!

Re: BASIC-Laufzeitfehler

Verfasst: Di 21. Nov 2023, 10:07
von helmut25
Und was genau ist denn ein "writer-Dokument"?
Schliesslich kann man ja auch ein neu erstelltes odt-Dokument als PDF exportieren.
Und das soll dann _kein_ writer-Dokument sein?

Re: BASIC-Laufzeitfehler

Verfasst: Di 21. Nov 2023, 10:26
von mikele
Hallo,
wenn ich mich recht entsinne, wird eine pdf-Datei in Draw geöffnet, stellt dann also ein Zeichnungsdokument dar. Das Makro bezieht sich auf ein Textdokument. Daher geht es schief.

Re: BASIC-Laufzeitfehler

Verfasst: Di 21. Nov 2023, 10:27
von karolus
helmut25 hat geschrieben:
Di 21. Nov 2023, 10:07
Und was genau ist denn ein "writer-Dokument"?
Schliesslich kann man ja auch ein neu erstelltes odt-Dokument als PDF exportieren.
Und das soll dann _kein_ writer-Dokument sein?
Genau … nach dem Export ist es ein …pdf -Dokument. Das ist aber im Prinzip eher ein Bild.

Draw kann das importieren… damit ists aber immer noch kein writer-Dokument.

writer kann direkt …txt, …odt, …doc, docx … importieren.