Seite 1 von 1

Bedingter Text per Macro einfügen

Verfasst: Mo, 11.01.2010 12:48
von Scalaia990
Hallo,

Bei dem Einfügen des Bedingten Textes müssen alle Tabellen- und Feldnamen von Hand eingetippt werden. Ich halte dies für ziemlich unkonfortabel und fehleranfällig.
Habe schon im Internet nach fertigen Extensions gesucht wo man zumindest einfache Abfragen (Wenn FeldA Leer dann "xyz" oder Wenn Feld A = Feld B dann Feld C) über einen Dialog einfügen kann. Habe leider nichts deratiges gefunden. Falls jemand etwas in diese Richtung kennt wäre ich um einen Tipp dankbar.

Beim Versuch ein eigenes Macro zu schreiben was genau diese einfachen Abfragen ermöglicht, stolpere ich schon beim Einfügen des Feldbefehls. Habe nirgends einen Hinweis gefunden wo jemand einen bedingten Text per Macro eingefügt hat oder dieses Problem zu lösen versucht hat.

Kann mir hier jemand weiterhelfen?

Wäre um jeden Tipp dankbar

Scalaia990

Re: Bedingter Text per Macro einfügen

Verfasst: Mo, 11.01.2010 13:58
von DPunch
Aloha

schau mal, ob Du hiermit weiterkommst

Code: Alles auswählen

	oDoc = thisComponent
	oCursor = oDoc.getCurrentController.getViewCursor 'ViewCursor für aktuelle Cursorposition holen
	oField = oDoc.createInstance("com.sun.star.text.textfield.ConditionalText")
	With oField
		.Condition = "PAGE > 0" 'Dein "Wenn"
		.TrueContent = "Mehr als 0 Seiten" 'Dein "Dann"
		.FalseContent = "Weniger/gleich 0 Seiten" 'Dein "Sonst"
	End With
	oDoc.getText.insertTextContent(oCursor,oField,False) 'Feld an der aktuellen Cursorposition einfügen
	oDoc.TextFields.Refresh

Re: Bedingter Text per Macro einfügen

Verfasst: Mo, 11.01.2010 17:22
von Scalaia990
Vielen Dank DPunch, genau das hab ich gesucht.

Scalaia990