複雑な基準を満たすレコードを表示するためにMicrosoft Excelの高度なフィルタを適用する方法
可能な使用シナリオ
Microsoft Excelでは、ワークシートデータに高度なフィルタを適用して複雑な基準を満たすレコードを表示できます。このスクリーンショットに示すように、Microsoft Excelではデータ > 高度なフィルタのコマンドを使用して高度なフィルタを適用できます。
Aspose.Cellsでは、Worksheet.AdvancedFilter()メソッドを使用してAdvanced Filterを適用することもできます。Microsoft Excelと同様に、以下のパラメーターを受け入れます。
isFilter
リストをその場でフィルタ処理するかどうかを示します。
listRange
リストの範囲。
criteriaRange
基準の範囲。
copyTo
データをコピーする範囲。
uniqueRecordOnly
唯一の行を表示またはコピーします。
複雑な基準を満たすレコードを表示するMicrosoft Excelの高度なフィルタの適用
次のサンプルコードは、サンプルエクセルファイルに高度なフィルタを適用し、出力エクセルファイルを生成します。スクリーンショットでは、両方のファイルが比較のために表示されています。スクリーンショット内でわかるように、出力エクセルファイル内でデータが複雑な基準に従ってフィルタ処理されています。
サンプルコード
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Load your source workbook | |
Workbook wb = new Workbook(sourceDir + "sampleAdvancedFilter.xlsx"); | |
//Access first worksheet | |
Worksheet ws = wb.Worksheets[0]; | |
//Apply advanced filter on range A5:D19 and criteria range is A1:D2 | |
//Besides, we want to filter in place | |
//And, we want all filtered records not just unique records | |
ws.AdvancedFilter(true, "A5:D19", "A1:D2", "", false); | |
//Save the workbook in xlsx format | |
wb.Save(outputDir + "outputAdvancedFilter.xlsx", SaveFormat.Xlsx); |