Variable (SetExpression) in Tabelle oder Text einfügen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Colster
**
Beiträge: 27
Registriert: Mi, 14.12.2005 13:44

Variable (SetExpression) in Tabelle oder Text einfügen

Beitrag von Colster »

Hallo liebe Gemeinde,

Der Code unten fügt in ein Writer Dokument einen setExpression-TextField-Master ein und dazu zwei Instanzen der Variable. Voraussetzung ist eine Tabelle im Dokument. Ich habe zu diesem Thema keine Beispiele gefunden und lange gebraucht um eine Variable im Dokument einzubauen. Ich hoffe, dass jemand anderes das mal gebrauchen kann.

Mit Grüßen

Colster

Code: Alles auswählen

Option explicit

Sub Main 

Dim oSEMaster as Object, oSEField as Object
Dim oDoc as Object, oText as Object
Dim oTable as Object, oCell as Object

oDoc = thisComponent
oTable = oDoc.getTextTables.getByIndex(0)

oSEField = oDoc.createInstance("com.sun.star.text.TextField.SetExpression")
oSEField.NumberingType = 2
oSEField.subType = com.sun.star.text.SetVariableType.STRING
oSEField.content = "Angelika"
oSEField.currentPresentation = "Angelika"

oSEMaster = oDoc.createInstance("com.sun.star.text.FieldMaster.SetExpression")
oSEMaster.name = "Variablenname"
oSEMaster.subType = 0

oSEField.attachTextFieldMaster(oSEMaster)
oText = oDoc.Text()


oText.insertTextContent(oText.getEnd(),oSeField,False)

oSEField = oDoc.createInstance("com.sun.star.text.TextField.SetExpression")
oSEField.NumberingType = 2
oSEField.subType = com.sun.star.text.SetVariableType.STRING
oSEField.content = 120
oSEField.currentPresentation = "120"

oSEField.attachTextFieldMaster(oSEMaster)
oCell  = oTable.getCellByPosition(0,0)


oCell.insertTextContent(oCell.Text.getEnd(),oSeField,False)

End Sub
Im Ganzen liegt der Nutzen mehr im Gebrauch als im Eigentum! (Aristoteles)