Ausgangssituation: Habe per Makro eine Tabelle erstellt, bei der die Tabelle eine relative Breite =100% hat. Nun möchte ich die Spalten in Prozent einstellen, was mir allerdings nur absolut per Makro gelingt. Hintergrund ist, daß ich eine HTML Datei erstellen (ODT saveToURL... HTML) und automatisch mit einer Tabelle füllen möchte, bei der die Spalten wegen der Bildschirmdarstellung eine relative Breits haben.
Hier mein Code:
Code: Alles auswählen
sub Tabelle_Spaltenbreite_einstellen
oDoc=ThisComponent
oTTS_Tabelle=oDoc.TextTables.getByIndex(0)
Tab_TxtTbl=oTTS_Tabelle.TableColumnSeparators
Tab_TxtTbl(0).Position=1500 'dies ist absolute Position vom linken Rand aus gesehen (Breite Tabelle = 10000)
Tab_TxtTbl(1).Position=2500
TxtTbl.TableColumnSeparators=Tab_TxtTbl
end sub
'##########################
Sub TTS_TextTabellenSpalten
oTTS_Dokument = ThisComponent
oTTS_Text = ThisComponent.Text
oTTS_Cursor = oTTS_Text.createTextCursor()
oTTS_Cursor.gotoEnd(False) ' Textcursor ans Dokumentende setzen
oTTS_Tabelle = ThisComponent.createInstance("com.sun.star.text.TextTable")
With oTTS_Tabelle
.HoriOrient = 0
.leftMargin=1000
.rightMargin=1000
.Name="Überschrift"
.IsWidthRelative=TRUE
.RelativeWidth=100
.initialize (25,5) '# (Zeilen, Spalten ab 1 gezählt)
End with

Gruss
sarotti