ピボットテーブルを挿入する

ピボットテーブルの作成

Aspose.Cells for Python via .NETを使用して、プログラムでピボットテーブルをスプレッドシートに追加することが可能です。

ピボットテーブルオブジェクトモデル

Aspose.Cells for Python via .NETでは、ピボットテーブルを作成および制御するために使用される特別なクラスのセットが提供されています。これらのクラスは、ピボットテーブルの構成要素であるPivotTableオブジェクトを作成および制御するために使用されます。オブジェクトは次のとおりです:

Aspose.Cellsを使用して簡単なピボットテーブルを作成する

  1. Cellオブジェクトのput_valueメソッドを使用してワークシートにデータを追加します。 このデータは、ピボットテーブルのデータソースとして使用されます。
  2. ワークシートにピボットテーブルを追加するために、PivotTablesコレクションのaddメソッドを呼び出します。このメソッドはWorksheetオブジェクトでカプセル化されています。
  3. 新しいPivotTableオブジェクトをPivotTablesコレクションから取得します。このコレクションはPivotTableのインデックスを渡すことでアクセスできます。
  4. ピボットテーブルを管理するために、上記で説明したPivotTableのいずれかを使用します。

例のコードを実行すると、ワークシートにピボットテーブルが追加されます。

from aspose.cells import Workbook
from aspose.cells.pivot import PivotFieldType
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Instantiating a Workbook object
workbook = Workbook()
# Obtaining the reference of the newly added worksheet
sheet = workbook.worksheets[0]
cells = sheet.cells
# Setting the value to the cells
cell = cells.get("A1")
cell.put_value("Sport")
cell = cells.get("B1")
cell.put_value("Quarter")
cell = cells.get("C1")
cell.put_value("Sales")
cell = cells.get("A2")
cell.put_value("Golf")
cell = cells.get("A3")
cell.put_value("Golf")
cell = cells.get("A4")
cell.put_value("Tennis")
cell = cells.get("A5")
cell.put_value("Tennis")
cell = cells.get("A6")
cell.put_value("Tennis")
cell = cells.get("A7")
cell.put_value("Tennis")
cell = cells.get("A8")
cell.put_value("Golf")
cell = cells.get("B2")
cell.put_value("Qtr3")
cell = cells.get("B3")
cell.put_value("Qtr4")
cell = cells.get("B4")
cell.put_value("Qtr3")
cell = cells.get("B5")
cell.put_value("Qtr4")
cell = cells.get("B6")
cell.put_value("Qtr3")
cell = cells.get("B7")
cell.put_value("Qtr4")
cell = cells.get("B8")
cell.put_value("Qtr3")
cell = cells.get("C2")
cell.put_value(1500)
cell = cells.get("C3")
cell.put_value(2000)
cell = cells.get("C4")
cell.put_value(600)
cell = cells.get("C5")
cell.put_value(1500)
cell = cells.get("C6")
cell.put_value(4070)
cell = cells.get("C7")
cell.put_value(5000)
cell = cells.get("C8")
cell.put_value(6430)
pivotTables = sheet.pivot_tables
# Adding a PivotTable to the worksheet
index = pivotTables.add("=A1:C8", "E3", "PivotTable2")
# Accessing the instance of the newly added PivotTable
pivotTable = pivotTables[index]
# Unshowing grand totals for rows.
pivotTable.row_grand = False
# Draging the first field to the row area.
pivotTable.add_field_to_area(PivotFieldType.ROW, 0)
# Draging the second field to the column area.
pivotTable.add_field_to_area(PivotFieldType.COLUMN, 1)
# Draging the third field to the data area.
pivotTable.add_field_to_area(PivotFieldType.DATA, 2)
# Saving the Excel file
workbook.save(dataDir + "pivotTable_test_out.xls")

高度なトピック