データパイロット
データパイロットテーブルコンテナ
データパイロットはシート単位で設定を行います。getDataPilotTables メソッドを使用してコンテナオブジェクトを取得します。 Sub datapilottable_1 oSheet = ThisComponent.getSheets().getByIndex(0) oDataPilotTables = oSheet.getDataPilotTables() End Sub このコンテナオブジェクトは次のインターフェースをサポートしています。
データパイロットディスクリプタ
データパイロットを設定するディスクリプタをコンテナから作成します。 Sub datapilottable_2 oSheet = ThisComponent.getSheets().getByIndex(0) oDataPilotTables = oSheet.getDataPilotTables() oDesc = oDataPilotTables.createDataPilotDescriptor() End Sub
フィールド
ページ、行、列、データ、隠しフィールドは同じプロパティ値で設定しますが、フィールドの種類により使用されるプロパティが異なります。
DataPilotFieldAutoShowInfo は .sheet.DataPilotFieldAutoShowInfo で指定します。
ShowItemsMode の指定。.sheet.DataPilotFieldShowItemsMode
並べ替え指定の SortInfo は .sheet.DataPilotFieldSortInfo で指定します。
Mode の指定は .sheet.DataPilotFieldSortMode で行います。
LayoutInfo の指定は .sheet.DataPilotFieldLayoutInfo で行います。
LayoutMode は .sheet.DataPilotFieldLayoutMode で指定します。
Orientation は .sheet.DataPilotFieldOrientation で指定します。
フィールドの項目
getItems メソッドで取得できる各フィールドの項目は項目の表示などを切り替えられます。メソッドの返り値はコンテナオブジェクトで、次のインターフェースをサポートしています。
データパイロットテーブルの追加
コンテナオブジェクトにディスクリプタを insertNewByName メソッドで挿入して新しいデータパイロットテーブルを作成します。 void insertNewByName( [in] string aName, [in] .table.CellAddress aOutputAddress, [in] .sheet.XDataPilotDescriptor xDescriptor ) declared in: .sheet.XDataPilotTables 新しいデータパイロットテーブルを挿入します
データパイロットテーブルの削除
既存のデータパイロットテーブルはコンテナから removeByName メソッドで削除します。 データパイロットテーブル
既存のデータパイロットテーブルはインデックスや名前、列挙型を使用して取得できます。 Sub datapilottable_10 oSheet = ThisComponent.getSheets().getByIndex(0) oDataPilotTables = oSheet.getDataPilotTables() oDataPilottable = oDataPilotTables.getByIndex(0) End Sub 更新
reflesh メソッドを呼ぶことでテーブルを更新できます。 oDataPilottable.reflesh() テーブルの範囲
結果のテーブルの範囲は getOutputRange メソッドで取得できます。返り値は com.sun.star.table.CellRangeAddress です。 aCellRangeAddress = oDataPilottable.getOutputRange() |