表の作成と書式設定

テーブルの作成

スプレッドシートの利点の1つは、電話リスト、タスクリスト、取引のリスト、資産リスト、負債リストなど、さまざまなタイプのリストを作成できることです。複数のユーザーが協力して、さまざまなリストを利用、作成、維持することができます。

Aspose.Cellsはリストの作成と管理をサポートしています。

リストオブジェクトの利点

実際のリストオブジェクトにデータのリストを変換するときの利点はいくつかあります。

  • 新しい行や列が自動的に含まれます。
  • リストの最下部に合計、平均、カウントなどを表示するために総合行を簡単に追加できます。
  • 右に追加された列は自動的にリストオブジェクトに取り込まれます。
  • 行と列に基づくチャートは自動的に拡張されます。
  • 行と列に割り当てられた名前付き範囲は自動的に拡張されます。
  • リストは誤って行や列が削除されないように保護されています。

Microsoft Excelを使用してリストオブジェクトを作成する

リストオブジェクトを作成するためのデータ範囲の選択
todo:image_alt_text
これにより、リストの作成ダイアログが表示されます。
リストを作成するダイアログ
todo:image_alt_text
データを指定してリストオブジェクトを実装し、合計行を指定します(データを選択し、リスト、その後合計行を選択します)。
リストオブジェクトを作成する
todo:image_alt_text

Aspose.Cells APIを使用する

Aspose.Cellsは、Microsoft Excelファイルを表す Workbook クラスを提供します。 Workbook クラスには、Excelファイル内の各ワークシートにアクセスできる Worksheets コレクションが含まれています。

ワークシートは Worksheet クラスで表されます。 Worksheet クラスは、ワークシートの管理に役立つ多くのメソッドを提供します。ワークシートに ListObject を作成するには、 GetListObjects コレクションメソッドを使用します。各 [ListObject] は、ListObjectCollection クラスのオブジェクトであり、更に Add メソッドで範囲を指定して追加します。

指定したセル範囲により、Aspose.Cellsは ListObject オブジェクトを作成します。[ListObject] クラスの属性(例: SetShowTotalsGetListColumns など)を使用してリストを制御します。

以下の例では、前述の手順でMicrosoft Excelを使用して作成したリストオブジェクトと同じ[ListObject]をAspose.Cells APIを使用して作成しています。

workbook, _ := NewWorkbook_String("book1.xls")
worksheets, _ := workbook.GetWorksheets()
worksheet, _ := worksheets.Get_Int(0)
listObjects, _ := worksheet.GetListObjects()
index, _ := listObjects.Add_Int_Int_Int_Int_Bool(1, 1, 7, 5, true)
listObject, _ := listObjects.Get_Int(index)
listObject.SetTableStyleType(TableStyleType_TableStyleMedium10)
listObject.SetShowTotals(true)
workbook.Save_String("CreatingListObjects_out.xlsx")

表の書式設定

関連データのグループを管理および分析するには、セルの範囲をリストオブジェクト(またはExcelテーブルとも呼ばれる)に変換することが可能です。表は、関連データを含む行と列の系列であり、他の行や列のデータとは独立して管理されます。デフォルトでは、表の各列には、ヘッダー行でフィルタリングが有効になっているため、リストオブジェクトデータを素早くフィルタリングまたはソートできます。リストオブジェクトには、数値データで作業するために有用な集計関数の選択肢を提供する合計行(リスト内の特別な行)を追加できます。Aspose.Cellsでは、リスト(またはテーブル)を作成および管理するためのオプションが提供されます。

リストオブジェクトの書式設定

Aspose.Cellsは、Microsoft Excelファイルを表す Workbook クラスを提供します。 Workbook クラスには、Excelファイル内の各ワークシートにアクセスできる Worksheets コレクションが含まれています。

ワークシートは Worksheet クラスで表されます。 Worksheet クラスは、ワークシートの管理に役立つ多くのメソッドを提供します。 ワークシート内に ListObject を作成するには、ListObjectCollection を使用します。各 [ListObject] は実際には ListObjectCollection クラスのオブジェクトであり、Add メソッドを提供して ListObject オブジェクトを追加し、その範囲を指定します。指定されたセル範囲に基づいて、Aspose.Cells によってワークシートに ListObject が作成されます。 [ListObject] クラスの属性(例:SetTableStyleType)を使用して、テーブルの整形を行います。

以下の例では、ワークシートにサンプルデータを追加し、[ListObject] を追加し、デフォルトのスタイルを適用しています。[ListObject]のスタイルはMicrosoft Excel 2007/2010でサポートされています。

workbook, _ := NewWorkbook()
worksheets, _ := workbook.GetWorksheets()
worksheet, _ := worksheets.Get_Int(0)
cells, _ := worksheet.GetCells()
set_cell_string_value(cells, "A1", "Employee")
set_cell_string_value(cells, "B1", "Quarter")
set_cell_string_value(cells, "C1", "Product")
set_cell_string_value(cells, "D1", "Continent")
set_cell_string_value(cells, "E1", "Country")
set_cell_string_value(cells, "F1", "Sale")
set_cell_string_value(cells, "A2", "David")
set_cell_string_value(cells, "A3", "David")
set_cell_string_value(cells, "A4", "David")
set_cell_string_value(cells, "A5", "David")
set_cell_string_value(cells, "A6", "James")
set_cell_string_value(cells, "A7", "James")
set_cell_string_value(cells, "A8", "James")
set_cell_string_value(cells, "A9", "James")
set_cell_string_value(cells, "A10", "James")
set_cell_string_value(cells, "A11", "Miya")
set_cell_string_value(cells, "A12", "Miya")
set_cell_string_value(cells, "A13", "Miya")
set_cell_string_value(cells, "A14", "Miya")
set_cell_string_value(cells, "A15", "Miya")
set_cell_int_value(cells, "B2", 1)
set_cell_int_value(cells, "B3", 2)
set_cell_int_value(cells, "B4", 3)
set_cell_int_value(cells, "B5", 4)
set_cell_int_value(cells, "B6", 1)
set_cell_int_value(cells, "B7", 2)
set_cell_int_value(cells, "B8", 3)
set_cell_int_value(cells, "B9", 4)
set_cell_int_value(cells, "B10", 4)
set_cell_int_value(cells, "B11", 1)
set_cell_int_value(cells, "B12", 1)
set_cell_int_value(cells, "B13", 2)
set_cell_int_value(cells, "B14", 2)
set_cell_int_value(cells, "B15", 2)
set_cell_string_value(cells, "C2", "Maxilaku")
set_cell_string_value(cells, "C3", "Maxilaku")
set_cell_string_value(cells, "C4", "Chai")
set_cell_string_value(cells, "C5", "Maxilaku")
set_cell_string_value(cells, "C6", "Chang")
set_cell_string_value(cells, "C7", "Chang")
set_cell_string_value(cells, "C8", "Chang")
set_cell_string_value(cells, "C9", "Chang")
set_cell_string_value(cells, "C10", "Chang")
set_cell_string_value(cells, "C11", "Geitost")
set_cell_string_value(cells, "C12", "Chai")
set_cell_string_value(cells, "C13", "Geitost")
set_cell_string_value(cells, "C14", "Geitost")
set_cell_string_value(cells, "C15", "Geitost")
set_cell_string_value(cells, "D2", "Asia")
set_cell_string_value(cells, "D3", "Asia")
set_cell_string_value(cells, "D4", "Asia")
set_cell_string_value(cells, "D5", "Asia")
set_cell_string_value(cells, "D6", "Europe")
set_cell_string_value(cells, "D7", "Europe")
set_cell_string_value(cells, "D8", "Europe")
set_cell_string_value(cells, "D9", "Europe")
set_cell_string_value(cells, "D10", "Europe")
set_cell_string_value(cells, "D11", "America")
set_cell_string_value(cells, "D12", "America")
set_cell_string_value(cells, "D13", "America")
set_cell_string_value(cells, "D14", "America")
set_cell_string_value(cells, "D15", "America")
set_cell_string_value(cells, "E2", "China")
set_cell_string_value(cells, "E3", "India")
set_cell_string_value(cells, "E4", "Korea")
set_cell_string_value(cells, "E5", "India")
set_cell_string_value(cells, "E6", "France")
set_cell_string_value(cells, "E7", "France")
set_cell_string_value(cells, "E8", "Germany")
set_cell_string_value(cells, "E9", "Italy")
set_cell_string_value(cells, "E10", "France")
set_cell_string_value(cells, "E11", "U.S.")
set_cell_string_value(cells, "E12", "U.S.")
set_cell_string_value(cells, "E13", "Brazil")
set_cell_string_value(cells, "E14", "U.S.")
set_cell_string_value(cells, "E15", "U.S.")
set_cell_int_value(cells, "F2", 2000)
set_cell_int_value(cells, "F3", 500)
set_cell_int_value(cells, "F4", 1200)
set_cell_int_value(cells, "F5", 1500)
set_cell_int_value(cells, "F6", 500)
set_cell_int_value(cells, "F7", 1500)
set_cell_int_value(cells, "F8", 800)
set_cell_int_value(cells, "F9", 900)
set_cell_int_value(cells, "F10", 500)
set_cell_int_value(cells, "F11", 1600)
set_cell_int_value(cells, "F12", 600)
set_cell_int_value(cells, "F13", 2000)
set_cell_int_value(cells, "F14", 500)
set_cell_int_value(cells, "F15", 900)
listObjects, _ := worksheet.GetListObjects()
index, _ := listObjects.Add_String_String_Bool("A1", "F15", true)
listObject, _ := listObjects.Get_Int(index)
listObject.SetShowHeaderRow(true)
listObject.SetTableStyleType(TableStyleType_TableStyleMedium10)
listObject.SetShowTotals(true)
workbook.Save_String("FormatTable_out.xlsx")
func set_cell_int_value(cells *Cells, cell_name string, value int32) {
cell, _ := cells.Get_String(cell_name)
cell.PutValue_Int(value)
}
func set_cell_string_value(cells *Cells, cell_name string, value string) {
cell, _ := cells.Get_String(cell_name)
cell.PutValue_String(value)
}