データの並べ替え
データの並べ替えは、Microsoft Excel の多くの便利な機能の 1 つです。これにより、ユーザーはデータを並べ替えてスキャンしやすくすることができます。
Aspose.Cells では、ワークシート データをアルファベット順または数値順に並べ替えることができます。 Microsoft Excel でデータを並べ替えるのと同じように機能します。
Microsoft Excel でのデータの並べ替え
Microsoft Excel でデータを並べ替えるには:
- 選択するデータから選別メニュー。 [並べ替え] ダイアログが表示されます。
- 並べ替えオプションを選択します。
通常、並べ替えはリストに対して実行されます。これは、データが列に表示される連続したデータのグループとして定義されます。
Microsoft Excel の [並べ替え] ダイアログ ボックス
Aspose.Cells でデータを並べ替える
Aspose.Cells はデータソーター昇順または降順でデータをソートするために使用されるクラス。クラスにはいくつかの重要なメンバーがあります。たとえば、次のようなメソッドです。setKey1 … setKey2とsetOrder1 … setOrder2.これらのメンバーは、並べ替えられたキーを定義し、キーの並べ替え順序を指定するために使用されます。
データの並べ替えを実装する前に、キーを定義し、並べ替え順序を設定する必要があります。クラスは、[選別](https://reference.aspose.com/cells/java/com.aspose.cells/datasorter#sort()ワークシートのセル データに基づいてデータの並べ替えを実行するために使用されるメソッド。
の選別 メソッドは、次のパラメーターを受け入れます。
この例では、Aspose.Cells API を使用してデータを並べ替える方法を示します。この例では、テンプレート ファイル “Book1.xls” を使用し、最初のワークシートのデータ範囲 (A1:B14) のデータを並べ替えます。
この例では、Microsoft Excel で作成されたテンプレート ファイル「Book1.xls」を使用します。
データを含むテンプレート Excel ファイル
以下のコードを実行すると、出力 Excel ファイルからわかるように、データが適切に並べ替えられます。
データを並べ替えてExcelファイルを出力
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the documents directory. | |
String dataDir = Utils.getSharedDataDir(DataSorting.class) + "data/"; | |
// Instantiate a new Workbook object. | |
Workbook workbook = new Workbook(dataDir + "book1.xls"); | |
// Get the workbook datasorter object. | |
DataSorter sorter = workbook.getDataSorter(); | |
// Set the first order for datasorter object. | |
sorter.setOrder1(SortOrder.DESCENDING); | |
// Define the first key. | |
sorter.setKey1(0); | |
// Set the second order for datasorter object. | |
sorter.setOrder2(SortOrder.ASCENDING); | |
// Define the second key. | |
sorter.setKey2(1); | |
// Sort data in the specified data range (CellArea range: A1:B14) | |
CellArea cellArea = new CellArea(); | |
cellArea.StartRow = 0; | |
cellArea.StartColumn = 0; | |
cellArea.EndRow = 13; | |
cellArea.EndColumn = 1; | |
sorter.sort(workbook.getWorksheets().get(0).getCells(), cellArea); | |
// Save the excel file. | |
workbook.save(dataDir + "DataSorting_out.xls"); | |
// Print message | |
System.out.println("Sorting Done Successfully"); |
背景色によるデータの並べ替え
Excel には、背景色に基づいてデータを並べ替える機能があります。同じ機能は、Aspose.Cells を使用して提供されます。データソーターどこSortOnType.CELL_COLORで使用できますaddKey() を使用して、背景色に基づいてデータを並べ替えます。指定された色を含むすべてのセルaddKey()、関数は SortOrder 設定に従って上または下に配置され、残りのセルの順序はまったく変更されません。
以下は、この機能をテストするためにダウンロードできるサンプル ファイルです。
outputsampleBackGroundFile.xlsx
サンプルコード
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// Load the Excel file. | |
Workbook wb = new Workbook(srcDir + "sampleInlineCharts.xlsx"); | |
// Access the sheet | |
Worksheet ws = wb.getWorksheets().get(0); | |
// Set the print area. | |
ws.getPageSetup().setPrintArea("D2:M20"); | |
// Initialize HtmlSaveOptions | |
HtmlSaveOptions options = new HtmlSaveOptions(); | |
// Set flag to export print area only | |
options.setExportPrintAreaOnly(true); | |
//Save to HTML format | |
wb.save(outDir + "outputInlineCharts.html",options); |