应用Microsoft Excel的高级筛选以显示符合复杂条件的记录

可能的使用场景

Microsoft Excel允许您对工作表数据应用高级筛选,以显示符合复杂条件的记录。您可以通过数据 > 高级命令应用Microsoft Excel的高级筛选,如下图所示。

todo:image_alt_text

Aspose.Cells还允许您使用Worksheet.advancedFilter()方法应用高级筛选。与Microsoft Excel一样,它接受以下参数。

isFilter

-listRange- 列表范围。

-criteriaRange- 条件范围。

列表范围。

criteriaRange

条件范围。

copyTo

拷贝数据的范围。

uniqueRecordOnly

仅显示或拷贝唯一行。

将 Microsoft Excel 的高级筛选应用于显示符合复杂条件的记录

以下示例代码在 Sample Excel File 上应用高级筛选,并生成 Output Excel File。屏幕截图显示了用于对比的两个文件。正如您在屏幕截图中所看到的,输出Excel文件中的数据已根据复杂条件进行了筛选。

todo:image_alt_text

示例代码

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Load your source workbook
Workbook wb = new Workbook(srcDir + "sampleAdvancedFilter.xlsx");
// Access first worksheet
Worksheet ws = wb.getWorksheets().get(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(outDir + "outputAdvancedFilter.xlsx", SaveFormat.XLSX);