[{"id":"ff9bd47a-cd46-472d-af43-366f35920ef1","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"f674ca00-4cf2-4f53-9a08-4aa596ff5f02","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"5f9ed446-5e43-4e35-b070-bbedb3095625","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"c8f61bda-f911-4c26-aa5c-cf046d91d345","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"ffcf2b4f-0e46-41d0-b0b7-0cc510a2a482","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"4200be12-4188-42f3-9cf4-5fcaebbc57f7","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7bc4edb3-af3c-4fe3-8820-973c7b43d825","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"af815243-c00f-4782-b362-bb52a9129e99","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"bd8aaf4e-1ba8-4025-8ba9-d57cfbefbc58","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"874f311d-9a12-4e41-9c01-e7aaa99ab496","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"5811b0f0-9142-4dec-87d5-11fbd1e001ec","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"cef428a7-3494-4942-81f6-6712e4b9d1e7","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"3be03770-5428-4ad4-8ebc-09708a22e209","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"563145bf-65b2-4718-851d-594d1b9cf1f6","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"b273295a-e4a0-45ad-be8a-5c3a2322d22c","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"76f8df3f-5d71-4244-8fa6-6be30e10170f","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7990d3f5-9c4c-4c37-9a96-7e7b1cf0e531","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"a5d052e6-ac14-4b26-b51d-2042af4bd88c","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"4a6e9860-0849-40aa-8cdb-c16c5fb52ef4","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"b02661dd-4bf2-4e6a-94c0-c85827e19c52","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"06c9877a-acd0-49b6-8a35-52d10c942e21","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"b9cc95e6-4c7e-4ae6-9168-6270c8b9df48","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"81742c3e-102a-44f5-8e12-83cdddf79651","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"f6568a5c-eb38-4edb-af3a-8af10e64b122","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"f30f3e16-1db8-48eb-b7a8-de189c306e42","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"c38d9bd1-ec29-4861-bea2-e9939a1d40b8","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"c7f7e6eb-630d-4851-ab1a-eeafb6882ff9","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"e82078d4-d506-4d51-83ea-129c35f610c2","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"2cf396a7-8e6d-4ece-867e-2a346c855b76","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7fdf2b77-d2f1-440f-8bde-79873ae161be","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"4bfbb7a7-db6a-4e62-9bb9-043090f29e06","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"4acb1bbe-766a-4271-a1e7-156999bf6da7","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"e2476b8f-2102-441c-9f8c-bbd9ca5f94c8","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"eeba73bc-77fb-4e4c-addd-f365b53e009b","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"604aae49-9273-455c-813b-c2c97aa713c7","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"fd995bda-fac2-4ef5-ab75-d8f6840b937a","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"24dbdbdf-1539-4e43-8f9f-036adaf28f36","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"6896e627-8625-484c-9487-48803c13019b","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"035cce7b-7cfc-405b-b003-419583668944","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"139bcd73-12b9-4e78-843c-dd63933e35b8","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"f38fe005-cfd6-4f25-9c83-f5a545aaa911","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"5fa9f1d8-ed73-4642-82cd-cb4f7a9a145a","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"09b280d0-fc2f-438a-8d57-e87c6ef02d8b","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]}]
SpreadJSで、ピボットテーブルのデータを並べ替えてデータ解析を行うことができます。迅速なデータ解析はとくに大量のデータの場合に役立ちます。データを並べ替えるには、sortInfo
オブジェクトをパラメータとして受け取るPivotTable.sort
メソッドを使用します。
SpreadJSを使用すると、ピボットテーブルのデータを4つの方法で並べ替えることができます。
フィールドのアイテム名によるソート
値によるソート
カスタムフィールドの項目値によるソート
カスタムコールバックによるソート
ピボットテーブルをフィールドの項目でソートするには、フィールド名を指定し、sortInfoのsortTypeプロパティを使用して並べ替え順序を昇順、降順、またはカスタムに設定します。
次の図では、「カテゴリ」フィールドに降順ソートを適用しています。
次のサンプルコードは、ピボットテーブルデータをフィールド項目名によって並べ替える方法を示します。
let pivotTable = spread.getActiveSheet().pivotTables.get("PivotTable");
var sortInfo = {
sortType: GC.Pivot.SortType.desc
};
pivotTable.sort("カテゴリ", sortInfo);
デザイナでデータをソートするには、フィールドのフィルタドロップダウンで[その他の並べ替えオプション]を選択します。このオプションをクリックして表示される [並べ替え(フィールド名)]ダイアログでは、対象フィールドを選択し、ソートタイプを昇順や降順に設定します。
次の図は、デザイナでフィールド項目名によるソートを行う方法を示します。
ピボットテーブルをフィールドの値でソートするには、sortInfo
クラスのsortType
とsortValueFieldName
プロパティを設定します。sortValueFieldNameプロパティで、データを並べ替える基準となるフィールドの名前を指定します。この機能は、ピボットテーブルデータを[総計]列の値で並べ替えます。
次の図は、[カテゴリ]フィールドが[数量]の値を基準に昇順に並べ替えられていることを示します。
次のサンプルコードは、ピボットテーブルに値によるソートを適用する方法を示します。
let pivotTable = spread.getActiveSheet().pivotTables.get("PivotTable");
var sortInfo = {
sortType: GC.Pivot.SortType.asc,
sortValueFieldName: "数量"
};
pivotTable.sort("カテゴリ", sortInfo);
デザイナでデータをソートするには、フィールドのフィルタドロップダウンで[その他の並べ替えオプション]を選択します。このオプションをクリックして表示される [並べ替え(フィールド名)]ダイアログでは、対象フィールドを選択し、ソートタイプを昇順や降順に設定します。
次の図は、デザイナで値によるソートを行う方法を示します。
ピボットデータを値によって並べ替えるには、値領域で表示されるコンテキストメニューの[並べ替え] オプションを使用できます。コンテキストメニューには、次の3つの並べ替えオプションがあります。
昇順
降順
その他の並べ替えオプション
最初の2つのオプションは値のソート順序をそれぞれ昇順と降順に設定しますが、[その他の並べ替えオプション…]をクリックすると値の領域に応じてダイアログが表示されます。
次の表は、コンテキストメニューを表示した値領域に基づくオプションの動作を説明します。
値領域 | ダイアログ | 動作 |
---|---|---|
通常値領域 | [値で並べ替え]ダイアログが表示されます。 | |
総計領域 | [値で並べ替え]ダイアログが表示されます。ただし、ソート方向が無効で、次の条件になります。
| |
行ヘッダ領域・コーナー領域 | [並べ替え(フィールド名)]ダイアログが表示され、次の条件になります。
| |
列ヘッダ領域 | [並べ替え(フィールド名)]ダイアログが表示され、次の条件になります。
|
ピボットテーブルをカスタムフィールド項目の値を基準にしてソートするには、sortInfo オブジェクトのsortByPivotReferencesプロパティを使用します。
次の図では、[カテゴリ]フィールドを、[注文日] フィールドの第2四半期のデータに基づいて、昇順に並べ替えています。
次のサンプルコードは、カスタムフィールド項目の値によってデータをソートする方法を示します。
let pivotTable = spread.getActiveSheet().pivotTables.get("PivotTable");
var sortInfo = {
sortType: GC.Pivot.SortType.asc,
sortValueFieldName: "数量",
sortByPivotReferences: [
{
fieldName: "注文日",
items: ["第2四半期"]
}
]
}
pivotTable.sort("カテゴリ", sortInfo);
デザイナでデータをソートするには、フィールドのフィルタドロップダウンで[その他の並べ替えオプション...]を選択します。このオプションをクリックして表示される [並べ替え]ダイアログでは、対象フィールドのソート順を選択して[その他のオプション...]ボタンをクリックすると、別の[並べ替え]ダイアログが表示されます。このダイアログで、「合計」がデフォルト選択であり、値によるソートと同じ結果を出力します。カスタムフィールド項目の値によるソートを実行するには、[選択された列の値] の範囲セレクターで範囲を選択して[OK]をクリックします。
行や列領域フィールドの場合、ダイアログオプションは無効とされています。例えば、本例でCategoryフィールドの場合、[その他のオプション…]ボタンをクリックすると、無効にされていますので数量フィールドを選択して[その他のオプション…]ボタンをクリックします。
次の動画では、デザイナを使用してカスタムフィールド項目の値によってソートしています。
ピボットテーブルを昇順や降順ではなく、カスタムロジックで並べ替えるには、カスタムコールバック関数を使用できます。
次の画像では、カスタムコールバック関数を使用して、総計列をソートしています。
次のサンプルコードは、カスタムコールバック関数を使用してTotalSales列をソートする方法を示します。
let pivotTable = spread.getActiveSheet().pivotTables.get("PivotTable");
var sortInfo = {
sortType: GC.Pivot.SortType.desc,
customSortCallback: (fieldItemNameArray)=>{
alert("カスタムコールバックによるソート")
return fieldItemNameArray.sort((a,b)=>b-a);
}
};
pivotTable.sort("総計", sortInfo);