Discussion:
Suchen nach Querverweisen auf geloeschte Textmarken o.ae.
Guenter Marxen
2004-11-19 10:57:00 UTC
Permalink
Hallo,

es kommt vor, dass man Textmarken (oder auch Referenzen), auf die man
querverwiesen hat, löscht (z.B. weil man die Textmarke löscht und neu
formuliert).

Der Querverweis ist dann zwar "vorhanden" (etwa durch eine schmale graue
Hinterlegung im Text sichtbar), aber leer (z.B. fehlt die "querverwiesene"
Seitennummer: unaufgelöste Referenz).

Kann man (und dann wie) solche unaufgelösten Referenzen suchen, um sie zu
ersetzen?

(Es ist mir bekannt, dass man das Problem umgehen kann, indem man vor dem
Löschen der "alten" Textmarke mitten hinein positioniert, den neuen Text
eingibt und dann die alten Reste links und rechts löscht. Man vergisst
diesen Wordaround aber manchmal und dann sind die Querverweise kaputt.)
--
MfG

Guenter Marxen
(Win2K, SO 7.0, PP3)
Jörg Schmidt
2004-11-19 14:28:29 UTC
Permalink
Hallo Guenter,
Post by Guenter Marxen
es kommt vor, dass man Textmarken (oder auch Referenzen), auf die man
querverwiesen hat, löscht (z.B. weil man die Textmarke löscht und neu
formuliert).
Der Querverweis ist dann zwar "vorhanden" (etwa durch eine
schmale graue
Hinterlegung im Text sichtbar), aber leer (z.B. fehlt die
"querverwiesene"
Seitennummer: unaufgelöste Referenz).
Kann man (und dann wie) solche unaufgelösten Referenzen
suchen, um sie zu
ersetzen?
Du könntest das mittels Makro erledigen.
Das folgende Makro sucht alle Querverweise/Referenzen auf Textmarken und
gesetzte Referenzen (jedoch nicht auf Endnoten, Fußnoten und
Nummernkreise) im Dokument und prüft ob das Verweisziel existiert, das
Ergebnis wird in einem Meldungsfenster ausgegeben:

sub unaufgeloeste_referenzen
Doc = ThisComponent
ref() = Doc.getReferenceMarks.ElementNames
txtm() = Doc.getBookMarks.ElementNames
TextFieldEnum = Doc.getTextFields.createEnumeration
While TextFieldEnum.hasMoreElements()
ausgabe = ""
TextField = TextFieldEnum.nextElement()
If
TextField.supportsService("com.sun.star.text.TextField.GetReference")
Then
If TextField.ReferenceFieldSource = 0 Then 'Referenz
ausgabe = "Verweis auf Referenz (" & TextField.SourceName &
") fehlerhaft - Ziel existiert nicht"
For i = 0 to UBOUND(ref())
If TextField.SourceName = ref(i) Then
ausgabe = "Verweis auf Referenz (" &
TextField.SourceName & ") gefunden - OK"
end if
next
End if
If TextField.ReferenceFieldSource = 2 Then 'Textmarke
ausgabe = "Verweis auf Textmarke (" & TextField.SourceName &
") fehlerhaft - Ziel existiert nicht"
For i = 0 to UBOUND(txtm())
If TextField.SourceName = txtm(i) Then
ausgabe = "Verweis auf Textmarke (" &
TextField.SourceName & ") gefunden - OK"
end if
next
End if
End If
if ausgabe <> "" Then
ergebnis = ergebnis & ausgabe & CHR(13)
End if
Wend
msgbox ergebnis
end sub

Man müßte nun überlegen was konkret geschehen soll wenn das Makro auf
eine unaufgelöste Referenz trifft.


Gruß
Jörg
Guenter Marxen
2004-11-19 15:20:48 UTC
Permalink
Hallo Jörg,

zuerst vielen Dank! Super! Makro funktioniert sehr gut.

Eine unaufgelöste Referenz wird gemeldet. Die muss ich jetzt noch suchen.
Toll wäre eine Seitenangabe bei der Meldung, geht das noch?

Bei sehr vielen Querverweisen ist die Bildschirmausgabe wahrscheinlich
nicht mehr angemessen. Kann die Ausgabe auch in eine Datei umgeleitet
werden (mit kurzer Meldung auf dem Bildschirm)?
Post by Jörg Schmidt
Post by Guenter Marxen
Der Querverweis ist dann zwar "vorhanden" (etwa durch eine
schmale graue
Hinterlegung im Text sichtbar), aber leer (z.B. fehlt die
"querverwiesene"
Seitennummer: unaufgelöste Referenz).
Du könntest das mittels Makro erledigen.
Das folgende Makro sucht alle Querverweise/Referenzen auf Textmarken und
gesetzte Referenzen (jedoch nicht auf Endnoten, Fußnoten und
Nummernkreise) im Dokument und prüft ob das Verweisziel existiert, das
--
MfG

Guenter Marxen
(Win2K, SO 7.0, PP3)
Jörg Schmidt
2004-11-19 17:44:53 UTC
Permalink
Hallo Guenter,
Post by Guenter Marxen
Eine unaufgelöste Referenz wird gemeldet. Die muss ich jetzt
noch suchen.
Toll wäre eine Seitenangabe bei der Meldung, geht das noch?
Bei sehr vielen Querverweisen ist die Bildschirmausgabe
wahrscheinlich
nicht mehr angemessen. Kann die Ausgabe auch in eine Datei umgeleitet
werden (mit kurzer Meldung auf dem Bildschirm)?
Ja, das geht alles.
Ich habe das jetzt so gemacht das die Seitenzahlen aller existierenden
Verweise ermittelt werden. Zusätzlich werden fehlerhafte Verweise in
"(*)" eingefaßt, damit sie im Text besser erkennbar sind. Diese
Funktionalität läßt sich abschalten, siehe Kommentar im Makro.
Anschließend wird die ganze Rückgabe in ein leeres Writer-Dokument
geschrieben. Die Reihenfolge der Ausgabe ist nach Index und nicht
Seitenzahlen geordnet (ich bin im Moment zu faul das zu ändern):

sub unaufgeloeste_referenzen_II
Doc = ThisComponent
ref() = Doc.getReferenceMarks.ElementNames
txtm() = Doc.getBookMarks.ElementNames
TextFieldEnum = Doc.getTextFields.createEnumeration
While TextFieldEnum.hasMoreElements()
ausgabe = ""
TextField = TextFieldEnum.nextElement()
If
TextField.supportsService("com.sun.star.text.TextField.GetReference")
Then
oViewCursor = Doc.CurrentController.getviewCursor()
oViewCursor.gotorange(Textfield.Anchor,false)
seite = oViewCursor.getPage()

If TextField.ReferenceFieldSource = 0 Then 'Referenz
ausgabe = "Verweis auf Referenz (" & TextField.SourceName &
") fehlerhaft - Ziel existiert nicht"
For i = 0 to UBOUND(ref())
If TextField.SourceName = ref(i) Then
ausgabe = "Verweis auf Referenz (" &
TextField.SourceName & ") gefunden - OK"
end if
next
End if
If TextField.ReferenceFieldSource = 2 Then 'Textmarke
ausgabe = "Verweis auf Textmarke (" & TextField.SourceName &
") fehlerhaft - Ziel existiert nicht"
For i = 0 to UBOUND(txtm())
If TextField.SourceName = txtm(i) Then
ausgabe = "Verweis auf Textmarke (" &
TextField.SourceName & ") gefunden - OK"
end if
next
End if
End If
if ausgabe <> "" Then
ergebnis = ergebnis & "Seite " & seite & ":" & CHR(10) & ausgabe &
CHR(10)
'============================
'diese Zeilen auskommentieren wenn Markierung unerwünscht
If Right(ausgabe,5) = "nicht" Then
oViewCursor.goRight(1,false)
oViewCursor.String = "(*)"
oViewCursor.goRight(3,true)
oViewCursor.goleft(4,false)
oViewCursor.string = "(*)"
End if
'============================
End if
Wend
'msgbox ergebnis
Dim result as Object
Dim sUrl as String
Dim Dummy()
sUrl = "private:factory/swriter"
result = StarDesktop.loadComponentFromURL( sUrl , "_blank", 0, Dummy() )
xxx = result.Text.CreateTextCursor
xxx.GotoStart(false)
xxx.string = ergebnis
msgbox "OK - fertig !"
end sub


Gib doch bitte eine Rückmeldung wie das bei großen Dokumenten
funktioniert, ich habe es nur mit einem 3-seitigem Dokument getestet.


Gruß
Jörg
Guenter Marxen
2004-11-21 14:49:49 UTC
Permalink
Hallo Jörg,
Post by Jörg Schmidt
Post by Guenter Marxen
Eine unaufgelöste Referenz wird gemeldet. Die muss ich jetzt noch suchen.
Toll wäre eine Seitenangabe bei der Meldung, geht das noch?
Bei sehr vielen Querverweisen ist die Bildschirmausgabe
wahrscheinlich
nicht mehr angemessen. Kann die Ausgabe auch in eine Datei umgeleitet
werden (mit kurzer Meldung auf dem Bildschirm)?
Ich habe das jetzt so gemacht das die Seitenzahlen aller existierenden
Verweise ermittelt werden. Zusätzlich werden fehlerhafte Verweise in
"(*)" eingefaßt, damit sie im Text besser erkennbar sind. Diese
nochmals: Super. Bei 200 Seiten Text mit mehreren Hundert Querverweisen hat
es gut funktioniert. Drei "unresolved references" (ich hab's in's Englische
übersetzt) wurden gefunden. Allerdings wird auch ein gültiger Verweis als
Fehlerhaft markiert, keine Ahnung, warum. (Gültig, weil die Textmarke
vorhanden ist und bei Klick auf den Verweis auch dorthin gesprungen wird.)

Ich habe versucht, durch Auskommentieren der "ausgabe" für gefundene
Querverweise die Zahl der Meldungen zu reduzieren. Dann werden aber (fast)
alle Querverweise als fehlerhaft markiert.

Ich werde einen Enhancement issue aufmachen, um diese Funktionalität in SO
zu integrieren, weil damit doch peinliche Fehler in langen Texten entdeckt
und beseitigt werden können.

Das Makro ist bestimmt die Veröffentlichung wert! Falls Du die Zeit und den
Nerv hast, das Makro zu optimieren (ich kann's dann wieder testen), hätte
ich folgende Vorschläge:

= Zuerst fragen, ob alle oder nur die unaufgelösten Referenzen gemeldet
werden sollen. (Funktionalität entsprechend erweitern.)

= Fragen, ob Fehler markiert werden sollen (*)xxx(*) Dann Hinweis, das
nur auf einer Kopie des Textes zu machen und die Möglichkeit geben,
abzubrechen.

= Als Trenner (für Windows) zwischen den einzelnen Meldungen CR+LF
(Absatzmarke), "in der Meldung nur LF (erzwungener Zeilenumbruch)
verwenden. Beispiel-Meldung:

CR+LF
Seite 9: LF
Verweis auf Textmarke (Version) fehlerhaft - Ziel existiert nicht
CR+LF

Die Meldungen können dann nach "Seite" sortiert werden. (Die
Reihenfolge ist sonst "willkürlich".)

- Am Ende Hinweis in der Messagebox, dass die Seitenzahlen die
"physischen", nicht die gedruckten sind, etwa bei
Einleitung 1 - 20 und Haupttext 1-200 im Haupttext gedruckte
Nummer + 20.

Die mit = markierten Punkte wären eine große Hilfe, den mit - markierten
kriegt man mit der Zeit auch selbst raus. ;-)

Nochmals vielen Dank!
--
MfG

Guenter Marxen
Jörg Schmidt
2004-11-21 20:45:32 UTC
Permalink
Hallo Günter,
Post by Guenter Marxen
Allerdings wird auch ein gültiger
Verweis als
Fehlerhaft markiert, keine Ahnung, warum. (Gültig, weil die Textmarke
vorhanden ist und bei Klick auf den Verweis auch dorthin
gesprungen wird.)
kannst Du mir mal das Dokument oder den relevaten Teil per PM
schicken,ich hoffe ist nicht allzu groß, (ich weiß nicht ob das geht
oder ob das Dokument wichtige Inhalte enthält) denn ich habe nicht den
Hauch einer Ahnung woran das liegen könnte. Da der Fehler möglicherweise
am konkreten Dokument liegt prüfe bitte was Du mir schickst, falls Du
nur einen Auszug schickst.
Post by Guenter Marxen
Ich habe versucht, durch Auskommentieren der "ausgabe" für gefundene
Querverweise die Zahl der Meldungen zu reduzieren. Dann
werden aber (fast)
alle Querverweise als fehlerhaft markiert.
als ich die erste Version schrieb war ich wohl zu faul da ein else oder
elseif einzubauen und habe dann in der zweiten Version einen
Meldungstext zum Prüfen einer Bedingung benutzt, ist natürlich
furchtbarer Programmierstil ... aber ich dachte das wäre nur zum
einmaligen Gebrauch
Post by Guenter Marxen
Das Makro ist bestimmt die Veröffentlichung wert! Falls Du
die Zeit und den
Nerv hast, das Makro zu optimieren (ich kann's dann wieder
testen), hätte
Naja, ich denke habe ich mir selbst eingebrockt ;-), ja werde versuchen
das in eine vernünftige Form zu bringen.
Post by Guenter Marxen
= Als Trenner (für Windows) zwischen den einzelnen Meldungen CR+LF
(Absatzmarke), "in der Meldung nur LF (erzwungener Zeilenumbruch)
CR+LF
Seite 9: LF
Verweis auf Textmarke (Version) fehlerhaft - Ziel existiert nicht
CR+LF
das ist eine ganz dumme Sache, mir ist bei diesem Makro erstmalig
aufgefallen das CHR(13) keinen vernünftigen Absatzumbruch bewirkt wenn
ich es in ein Writerdokument per Code kopiere (lasse ich die
Steuerzeichen anzeigen sieht das aus wie ein Notenschlüssel), ich müßte
da immer INSERT Page_Break verwenden, dann müßte ich aber zeilenweise in
die Writerdatei schreiben.
Ich denke an das ist nur eine Kleinigkeit, habe aber noch nicht weiter
getestet, vielleicht weiß ja jemand was ich statt CHR(13) für New Line
oder CR+LF verwenden muß.
Ich nehme aber an ich werde das in der verbesserten Version ohnehin in
eine Calc-Tabelle schreiben, falls Dir das ungünstig erscheint dann sag
mir das.


Gruß
Jörg
Guenter Marxen
2004-11-21 23:12:44 UTC
Permalink
Hallo Jörg,

nur so als Grundsätzliches: Das Makro ist schon so sehr, sehr hilfreich für
lange Texte mit (vielen) Querverweisen.
Post by Jörg Schmidt
Post by Guenter Marxen
Allerdings wird auch ein gültiger
Verweis als
Fehlerhaft markiert, keine Ahnung, warum. (Gültig, weil die Textmarke
vorhanden ist und bei Klick auf den Verweis auch dorthin
gesprungen wird.)
kannst Du mir mal das Dokument oder den relevaten Teil per PM
schicken,ich hoffe ist nicht allzu groß, (ich weiß nicht ob das geht
oder ob das Dokument wichtige Inhalte enthält) denn ich habe nicht den
Leider geht das wegen des Inhalts nicht. Das ist aber auch nicht so
tragisch, da ein falsch gemeldeter "Fehler" nicht ins Gewicht fällt, wenn
die wirklichen Fehler gefunden werden.
Post by Jörg Schmidt
Hauch einer Ahnung woran das liegen könnte. Da der Fehler möglicherweise
am konkreten Dokument liegt prüfe bitte was Du mir schickst, falls Du
nur einen Auszug schickst.
Das Dokument hat rund 3 MB Größe und hat u.a. eine andere Merkwürdigkeit.
In der Kapitel-Nummerierung wird die Nummer der 1. Ebene nach Speichern und
erneutem Öffnen IMMER mit der Zeichenvorlage "Nummerierungszeichen"
formatiert, egal wie oft ich das zurückstelle auf "Ohne".

Da ist also irgendetwas im Dokument nicht in Ordnung, was ich aber nicht
feststellen kann. Also meine ich, eine Suche nach dem "Fehler" im Makro
macht zu diesem Zeitpunkt keinen Sinn. (Vieleicht, falls die Funktionalität
in Writer integriert wird.)
Post by Jörg Schmidt
Post by Guenter Marxen
Ich habe versucht, durch Auskommentieren der "ausgabe" für gefundene
Querverweise die Zahl der Meldungen zu reduzieren. Dann
werden aber (fast)
alle Querverweise als fehlerhaft markiert.
als ich die erste Version schrieb war ich wohl zu faul da ein else oder
elseif einzubauen und habe dann in der zweiten Version einen
Meldungstext zum Prüfen einer Bedingung benutzt, ist natürlich
furchtbarer Programmierstil ... aber ich dachte das wäre nur zum
einmaligen Gebrauch
Nein, nicht furchtbar, das ist ja ein iterativer Vorgang und da war das
sehr (!) hilfreich. (Aus Erfahrung auch mit eigenen Programmen - Basic
kenne ich nicht - hab' ich's "natürlich" nur auf einer Kopie getestet).
Post by Jörg Schmidt
Post by Guenter Marxen
Das Makro ist bestimmt die Veröffentlichung wert! Falls Du
die Zeit und den
Nerv hast, das Makro zu optimieren (ich kann's dann wieder
testen), hätte
Naja, ich denke habe ich mir selbst eingebrockt ;-), ja werde versuchen
das in eine vernünftige Form zu bringen.
Tausende werden es Dir danken. ;-)) Im Ernst: Das ist ein sehr hilfreiches
Makro für lange Texte mit Querverweisen, falls man z.B. eine zweite Version
des Textes schreibt und dabei Formulierungen ändert.
Post by Jörg Schmidt
Post by Guenter Marxen
= Als Trenner (für Windows) zwischen den einzelnen Meldungen CR+LF
(Absatzmarke), "in der Meldung nur LF (erzwungener Zeilenumbruch)
CR+LF
Seite 9: LF
Verweis auf Textmarke (Version) fehlerhaft - Ziel existiert nicht
CR+LF
das ist eine ganz dumme Sache, mir ist bei diesem Makro erstmalig
aufgefallen das CHR(13) keinen vernünftigen Absatzumbruch bewirkt wenn
ich es in ein Writerdokument per Code kopiere (lasse ich die
Steuerzeichen anzeigen sieht das aus wie ein Notenschlüssel), ich müßte
da immer INSERT Page_Break verwenden, dann müßte ich aber zeilenweise in
die Writerdatei schreiben.
Ich denke an das ist nur eine Kleinigkeit, habe aber noch nicht weiter
getestet, vielleicht weiß ja jemand was ich statt CHR(13) für New Line
oder CR+LF verwenden muß.
Aus der Erinnerung: CR = CHR (13); LF = CHR(10). Unter Unix/Linux ist es
nur CR (?), bei MacOS nur LF (?) oder umgekehrt (habe gerade nichts zum
Nachschauen zur Verfügung und benutze weder Unix noch MacOS). Das ist
natürlich ein Problem, aber vielleicht können die Mac- und Linux-Kenner zum
Problem noch etwas beitragen.
(Ansonsten sind wohl die Basic-Funktionen etc. wie Page_Break notwendig.)
Post by Jörg Schmidt
Ich nehme aber an ich werde das in der verbesserten Version ohnehin in
eine Calc-Tabelle schreiben, falls Dir das ungünstig erscheint dann sag
mir das.
Die Writer-Datei finde ich an sich ok, erst recht, wenn das mit CR+LF und
LF o. so ä. funktioniert.
Die Calc-Tabelle kann Vorteile haben, wenn die einzelnen Angaben in
unterschiedlichen Spalten stehen, z.B. die Seite in Spalte 1, die Marke in
Spalte 2 und die Meldung Ok/Fehler in Spalte 3.
--
MfG

Guenter Marxen
Jörg Schmidt
2004-11-22 09:33:36 UTC
Permalink
Hallo Günter,
Post by Guenter Marxen
Die Calc-Tabelle kann Vorteile haben, wenn die einzelnen Angaben in
unterschiedlichen Spalten stehen, z.B. die Seite in Spalte 1,
die Marke in
Spalte 2 und die Meldung Ok/Fehler in Spalte 3.
ja so hatte ich das gedacht und werde es nun so machen


Gruß
Jörg
Eric Hoch
2004-11-22 10:10:23 UTC
Permalink
Hallo Gueter, Jörg,
Post by Guenter Marxen
Aus der Erinnerung: CR = CHR (13); LF = CHR(10). Unter Unix/Linux
ist es nur CR (?), bei MacOS nur LF (?) oder umgekehrt (habe
gerade nichts zum Nachschauen zur Verfügung und benutze weder
Unix noch MacOS).
Genau umgekehrt. LF=Unix/Linux und CR=MacOS.

Da Mac OS X aber ein Unix ist, müßte man testen, ob es nicht auch
LF versteht. Ich weiß, daß es hie und da genau mit diesem Zeilenede
Probleme gibt, aber manchmal halt schon nicht mehr.

Es wäre einen Versuch wert, das Macro zu testen.

Mit freundlichen Grüßen
Eric Hoch
--
## Ansprechpartner Anwenderunterstützung, users-Mailingliste, MacOS
X
## War unsere Hilfe erfolgreich? Bitte teilen Sie es uns mit. Danke.
## de.OpenOffice.org - Office für MacOS X, Linux, Solaris & Windows
## Netikette? http://www.eschkitai.de/openoffice/netikette.html
Jörg Schmidt
2004-11-22 10:56:46 UTC
Permalink
Post by Eric Hoch
Post by Guenter Marxen
Aus der Erinnerung: CR = CHR (13); LF = CHR(10). Unter Unix/Linux
ist es nur CR (?), bei MacOS nur LF (?) oder umgekehrt (habe
gerade nichts zum Nachschauen zur Verfügung und benutze weder
Unix noch MacOS).
Genau umgekehrt. LF=Unix/Linux und CR=MacOS.
Da Mac OS X aber ein Unix ist, müßte man testen, ob es nicht auch
LF versteht. Ich weiß, daß es hie und da genau mit diesem Zeilenede
Probleme gibt, aber manchmal halt schon nicht mehr.
Es es nicht sooo wichtig, aber was mir Probleme bereitet ist:

Beispiel-Code:

'...
For i = 1 to 100
a = a & Array_mit_Strings(i) & CHR(13)
Next i
'...

Führt z.B. in einer Message-Box zu korrekter Ausgabe (auch mit CHR(10)),
aber wenn ich den Inhalt von a so in ein Dokument schreibe ist es nicht
korrekt:

Dim result as Object
Dim sUrl as String
Dim Dummy()
sUrl = "private:factory/swriter"
result = StarDesktop.loadComponentFromURL( sUrl , "_blank", 0, Dummy() )
xxx = result.Text.CreateTextCursor
xxx.GotoStart(false)
xxx.string = a

ich brauche also nur einen passenden Ersatz für CHR(13), das ist mein
Problem. Das mit Paragraph_Break geht natürlich, aber dann muß ich
zeilenweise schreiben.
(konkret beziehe ich mich auf Windows, aber das müßte natürlich auch
unter Linux funktionieren, da ich ja nicht weiß unter welchem BS das
Makro später verwendet wird)

Vielleicht hat ja jemand einen Tip.

Gruß
Jörg

Marc Santhoff
2004-11-22 05:16:14 UTC
Permalink
Am So, den 21.11.2004 schrieb Jörg Schmidt um 21:45:
[...]
Post by Jörg Schmidt
Post by Guenter Marxen
= Als Trenner (für Windows) zwischen den einzelnen Meldungen CR+LF
(Absatzmarke), "in der Meldung nur LF (erzwungener Zeilenumbruch)
CR+LF
Seite 9: LF
Verweis auf Textmarke (Version) fehlerhaft - Ziel existiert nicht
CR+LF
das ist eine ganz dumme Sache, mir ist bei diesem Makro erstmalig
aufgefallen das CHR(13) keinen vernünftigen Absatzumbruch bewirkt wenn
ich es in ein Writerdokument per Code kopiere (lasse ich die
Steuerzeichen anzeigen sieht das aus wie ein Notenschlüssel), ich müßte
da immer INSERT Page_Break verwenden, dann müßte ich aber zeilenweise in
die Writerdatei schreiben.
Ich denke an das ist nur eine Kleinigkeit, habe aber noch nicht weiter
getestet, vielleicht weiß ja jemand was ich statt CHR(13) für New Line
oder CR+LF verwenden muß.
sub insertCR(oText as object, oCursor as object)
oText.insertControlCharacter(oCursor, _
com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK, FALSE)
end sub

Gruß,
Marc
Jörg Schmidt
2004-11-22 09:33:35 UTC
Permalink
Hallo Marc,
Post by Jörg Schmidt
Post by Jörg Schmidt
da immer INSERT Page_Break verwenden, dann müßte ich aber
zeilenweise in
Post by Jörg Schmidt
die Writerdatei schreiben.
Ich denke an das ist nur eine Kleinigkeit, habe aber noch
nicht weiter
Post by Jörg Schmidt
getestet, vielleicht weiß ja jemand was ich statt CHR(13)
für New Line
Post by Jörg Schmidt
oder CR+LF verwenden muß.
sub insertCR(oText as object, oCursor as object)
oText.insertControlCharacter(oCursor, _
com.sun.star.text.ControlCharacter.PARAGRAPH_BREAK, FALSE)
end sub
danke,
ich meinte natürlich auch PARAGRAPH_BREAK und nicht Page_Break.

Gruß
Jörg
Loading...