Top > OOoBasic > Calc > AutoFormat

オートフォーマット Edit

表のオートフォーマット。

設定ファイルが config/autotbl.fmt にあるがフォーマット不明。その代わり TableAutoFormats サービスで管理できます。でもサービスから読み込み、保存、などはできません。また、拡張機能としての配布もサポートされていません。

サービス Edit

TableAutoFormats サービスをインスタンス化します。

 oTableAutoFormats = CreateUnoService( _
   "com.sun.star.sheet.TableAutoFormats" )

各オートフォーマットの管理には主に下記のインターフェースが利用できます。

  • com.sun.star.container.XElementAccess
  • com.sun.star.container.XEnumerationAccess
  • com.sun.star.container.XIndexAccess
  • com.sun.star.container.XNameAccess
  • com.sun.star.container.XNameContainer
  • com.sun.star.container.XNameReplace

適用 Edit

セル範囲にオートフォーマットを適用します。autoFormat メソッドの引数にオートフォーマット名を指定します。

oCellRange = oSheet.getCellRangeByPosition(0, 0, 5, 5)
oCellRange.autoFormat("User")

取得 Edit

コンテナから各オートフォーマットにアクセスします。返り値は TableAutoFormat です。

 oObj1 = oTableAutoFormats.getByIndex( 0 )
 oObj2 = oTableAutoFormats.getByName( "User1" )

次のようなインターフェースをサポートしており、各フィールドの設定を保持しています。

  • com.sun.star.container.XElementAccess
  • com.sun.star.container.XEnumerationAccess
  • com.sun.star.container.XIndexAccess
  • com.sun.star.container.XNamed

各要素は .sheet.TableAutoFormatField サービスのインスタンスです。

設定 Edit

各オートフォーマットのオプション設定。プロパティ値として設定します。

オプション説明
IncludeBackgroundboolean背景を含む
IncludeBorderboolean枠線を含む
IncludeFontbooleanフォント設定を含む
IncludeJustifyboolean位置合わせを含む
IncludeNumberFormatboolean数書式設定を含む
IncludeWidthAndHeightboolean幅と高さを含む

フィールド Edit

コンテナから取得できるフィールドは表オートフォーマットを作成する時の 4 x 4 セル範囲の左上から右に向かってインデックス 0 - 16 になります。オートフォーマットのダイアログに表示されている順番とは異なります。

セルのスタイルと同じような内容です。

プロパティ説明
CellBackColorlong
CharColorlong
CharContouredboolean
CharCrossedOutboolean
CharFontshort
CharFontCharSetshort
CharFontCharSetAsianshort
CharFontCharSetComplexshort
CharFontFamilyshort
CharFontFamilyAsianshort
CharFontFamilyComplexshort
CharFontNamestring
CharFontNameAsianstring
CharFontNameComplexstring
CharFontPitchshort
CharFontPitchAsianshort
CharFontPitchComplexshort
CharFontStyleNamestring
CharFontStyleNameAsianstring
CharFontStyleNameComplexstring
CharHeightfloat
CharHeightAsianfloat
CharHeightComplexfloat
CharPosture.awt.FontSlant
CharPostureAsian.awt.FontSlant
CharPostureComplex.awt.FontSlant
CharShadowedboolean
CharUnderlineshort
CharWeightfloat
CharWeightAsianfloat
CharWeightComplexfloat
HoriJustify.table.CellHoriJustify
ImplementationId[]byte
ImplementationNamestring
IsCellBackgroundTransparentboolean
IsTextWrappedboolean
Orientation.table.CellOrientation
ParaBottomMarginlong
ParaLeftMarginlong
ParaRightMarginlong
ParaTopMarginlong
PropertySetInfo.beans.XPropertySetInfo
RotateAnglelong
RotateReference.table.CellVertJustify
SupportedServiceNames[]string
TableBorder.table.TableBorder
Types[]type
VertJustify.table.CellVertJustify

作成と挿入 Edit

新しく作成するには (なぜか) ドキュメントの XMultiServiceFactory インターフェースを利用してcom.sun.star.sheet.TableAutoFormat サービスをインスタンス化します。

oDoc = ThisComponent
oTableAutoFormat = oDoc.createInstance("com.sun.star.sheet.TableAutoFormat")

作成したオートフォーマットは名前を指定して挿入します。

oTableAutoFormats.insertByName( "New_1", oTableAutoFormat)

または置換できます。

oTableAutoFormats.replaceByName( "New_1", oTableAutoFormat)

削除 Edit

削除は removeByName メソッドで行います。

 oTableAutoFormats.removeByName("New_1")

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes