Seite 1 von 1

Felder in normalen Text umwandeln

Verfasst: Do, 02.10.2008 13:08
von joe_ma
Hallo

Ich habe in einem Writer Dokument diverse Felder eingebaut, welche aus einer Datenbank gefüllt werden. Ich möchte jetzt, dass diese Feldinhalte in normalen Text umgewandelt werden können (analog zu <ctrl>+<shift>+F9 in Word). Wie ich aus dem Interenet erfahren habe, gibt es dafür in Oo keine eingebaute Funktion, man muss die selber bauen. Genau dabei brauche ich eure Hilfe.

Ich habe ein Markro mit folgenden Schritten aufgezeichnet:
- Cursor vor das Feld setzen
- Feld markieren
- Delete
- Inhalte unformatiert wieder einfügen

Dieses Makro funktioniert, kann aber immer nur ein Feld umwandeln. Da das Dokument unzählige Felder hat, wäre es schöner, ein Makro zu haben, das alle Felder auf einen Rutsch umwandelt. Kann mir da jemand auf die Sprünge helfen, wie ich das programmieren kann?

Ich benutze OpenOffice 2.4.1.

Danke und Gruss
Jörg

Re: Felder in normalen Text umwandeln

Verfasst: Do, 02.10.2008 13:56
von komma4
Jörg,

nutze das folgende Makro (kommentiere die CharWeight-Zeile aus, dann sollte es das Gesuchte sein):

Code: Alles auswählen

' http://www.oooforum.org/forum/viewtopic.phtml?t=59224
' JohnV Tue Jul 03, 2007 7:56 pm
Sub ReplaceFieldWithTextAndChangeStyle
Dim oEnum,thisField,anc
oEnum = ThisComponent.getTextFields.createEnumeration
While oEnum.hasMoreElements
 thisField = oEnum.nextElement
 anc = thisField.getAnchor
 anc.CharWeight = 200 'Change style to bold.
 anc.setString(anc.getString)'Change field to text.
Wend
End Sub
Zufrieden?

Re: Felder in normalen Text umwandeln

Verfasst: Do, 02.10.2008 14:23
von joe_ma
komma4 hat geschrieben:Zufrieden?
Sehr!!!

Vielen Dank für die rasche Antwort. Das ist genau, was ich gesucht habe.

Gruss
Jörg