カスタムソートリストで列内のデータをソートする
可能な使用シナリオ
列のデータをカスタムリストを使用してソートできます。これはDataSorter.AddKey(int key, SortOrder order, String customList)メソッドを使用することで行えます。ただし、このメソッドはカスタムリストのアイテムにカンマが含まれていない場合にのみ機能します。カンマが含まれる場合(“USA,US”、“China,CN"など)は、**DataSorter.AddKeyメソッド(Int32、SortOrder、String[])**)メソッドを使用する必要があります。ここで、最後のパラメータはStringではなくStringの配列です。
カスタムソートリストを使用した列内のデータの並べ替え
**DataSorter.AddKey Method (Int32, SortOrder,String[])**)メソッドを使用してカスタムソートリストでデータをソートする方法を説明したサンプルコードをご覧ください。このコードで使用されたサンプルExcelファイルとそれによって生成されるoutput Excel fileを確認してください。次のスクリーンショットには、サンプルExcelファイルにコードが及ぼす効果が表示されています。
サンプルコード
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load the source Excel file | |
Workbook wb = new Workbook(sourceDir + "sampleSortData_CustomSortList.xlsx"); | |
//Access first worksheet | |
Worksheet ws = wb.Worksheets[0]; | |
//Specify cell area - sort from A1 to A40 | |
CellArea ca = CellArea.CreateCellArea("A1", "A40"); | |
//Create Custom Sort list | |
string[] customSortList = new string[] { "USA,US", "Brazil,BR", "China,CN", "Russia,RU", "Canada,CA" }; | |
//Add Key for Column A, Sort it in Ascending Order with Custom Sort List | |
wb.DataSorter.AddKey(0, SortOrder.Ascending, customSortList); | |
wb.DataSorter.Sort(ws.Cells, ca); | |
//Save the output Excel file | |
wb.Save(outputDir + "outputSortData_CustomSortList.xlsx"); |