ピボットテーブルとソースデータ
Contents
[
Hide
]
Pivot Tableのソースデータ
デザイン時にはわからない異なるデータソース(たとえばデータベースなど)からデータを取るピボットテーブルを作成したいときがあります。この記事では、ピボットテーブルのデータソースを動的に変更するアプローチについて説明します。
ピボットテーブルのデータソースを変更する
- 新しいデザイナーテンプレートを作成します。
-
以下のスクリーンショットに示すように、新しいデザイナーテンプレートファイルを作成します。
-
その後、DataSourceという名前の範囲を定義します。この範囲はこれらのセルの範囲を参照します。
デザイナーテンプレートの作成と名前付き範囲の定義、DataSource
-
- この名前付き範囲に基づいてPivot Tableを作成します。
-
Microsoft Excelでデータ、ピボットテーブル、ピボットテーブルおよびピボットチャートレポートを選択します。
-
最初のステップで作成した名前付き範囲に基づいてピボットテーブルを作成します。
DataSourceに基づいてピボットテーブルを作成する
-
- 対応するフィールドをピボットテーブルの行と列にドラッグし、スクリーンショットに示されているような結果のピボットテーブルを作成します。
対応するフィールドに基づいてピボットテーブルを作成する
設計したピボットテーブルが以下に示されています。
-
データオプションの設定で開くときに更新をチェックします。
ピボットテーブルオプションの設定
これで、このファイルをデザイナーテンプレートファイルとして保存できます。
- 新しいデータを埋め込んでピボットテーブルのソースデータを変更します。
- デザイナーテンプレートが作成されたら、次のコードを使用してピボットテーブルのソースデータを変更します。
以下のコード例を実行すると、ピボットテーブルのソースデータが変更されます。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const AsposeCells = require("aspose.cells.node"); | |
//The path to the documents directory. | |
var dataDir = RunExamples.GetDataDir("."); | |
var InputPath = dataDir + "Book1.xlsx"; | |
//Instantiating a Workbook object | |
var workbook = new AsposeCells.Workbook(InputPath); | |
//Accessing the first worksheet in the Excel file | |
var worksheet = workbook.getWorksheets().get(0) | |
//Populating new data to the worksheet cells | |
worksheet.getCells().get("A9").putValue("Golf"); | |
worksheet.getCells().get("B9").putValue("Qtr4"); | |
worksheet.getCells().get("C9").putValue(7000); | |
//Changing named range "DataSource" | |
var range = worksheet.getCells().createRange(0, 0, 9, 3); | |
range.setName("DataSource"); | |
//Saving the modified Excel file | |
workbook.save(dataDir + "output.xls"); | |