easyui-datebox设置日期范围_Java 在Excel中设置筛选器

在日常办公中,Excel工作表通常含有大量不同类型的数据,当我们想方便,快捷地从中筛选并显示所需数据时,则需用到筛选器这一工具。本文就将通过使用Java程序来演示如何设置Excel筛选器。

使用工具:Free Spire.XLS for Java(免费版)

Jar文件获取及导入:

方法1:通过E-iceblue中文官网下载获取jar包。解压后将lib文件夹下的Spire.Xls.jar文件导入Java程序。(如下图)

7b846218d7a0af0fa2954a0a5e4b4679.png

方法2:通过maven仓库安装导入。具体安装教程详见E-iceblue中文官网。

原Excel文档:

eaacbf78dce0b7b91e28fef147d5aca2.png

【示例1】设置文本筛选

import com.spire.xls.ExcelVersion;import com.spire.xls.Workbook;import com.spire.xls.Worksheet;import com.spire.xls.collections.AutoFiltersCollection;public class TextFilter {    public static void main(String[] args) {        //加载Excel示例文档        Workbook wb = new Workbook();        wb.loadFromFile("C:甥敳獲Test1DesktopSample.xlsx");        //获取第一个工作表        Worksheet sheet = wb.getWorksheets().get(0);        //获取AutoFiltersCollection对象        AutoFiltersCollection filters = sheet.getAutoFilters();        //设置筛选器的添加范围        filters.setRange(sheet.getCellRange(1,1,16,8));        //在第二列添加筛选器并设置文本为“市场部”的筛选条件        filters.addFilter(1, "市场部");        //运行筛选功能        filters.filter();        //保存文档        wb.saveToFile("output/TextFilter.xlsx", ExcelVersion.Version2013);    }}

设置效果:

019db397d0db236a8180ea47c34ef1f2.png

【示例2】设置数字筛选

import com.spire.xls.ExcelVersion;import com.spire.xls.Workbook;import com.spire.xls.Worksheet;import com.spire.xls.collections.AutoFiltersCollection;import com.spire.xls.core.spreadsheet.autofilter.FilterOperatorType;public class NumberFilter {    public static void main(String[] args) {        //加载Excel示例文档        Workbook wb = new Workbook();        wb.loadFromFile("C:甥敳獲Test1DesktopSample.xlsx");        //获取第一个工作表        Worksheet sheet = wb.getWorksheets().get(0);        //获取AutoFiltersCollection对象        AutoFiltersCollection filters = sheet.getAutoFilters();        //设置筛选器的添加范围        filters.setRange(sheet.getCellRange(1,1,16,8));        //在第六列添加筛选器并设置数字范围为350-900的筛选条件        filters.customFilter(5, FilterOperatorType.GreaterOrEqual, 350, true, FilterOperatorType.LessOrEqual, 900);        //运行筛选功能        filters.filter();        //保存文档        wb.saveToFile("output/NumberFilter.xlsx", ExcelVersion.Version2013);    }}

设置效果:

1211bf5cdf3ddfa8b06be82754da80c4.png

【示例3】设置颜色筛选

import com.spire.xls.ExcelVersion;import com.spire.xls.Workbook;import com.spire.xls.Worksheet;import com.spire.xls.collections.AutoFiltersCollection;public class ColorFilter {    public static void main(String[] args) {        //加载Excel示例文档        Workbook wb = new Workbook();        wb.loadFromFile("C:甥敳獲Test1DesktopSample.xlsx");        //获取第一张工作表        Worksheet sheet = wb.getWorksheets().get(0);        //获取AutoFiltersCollection对象        AutoFiltersCollection filters = sheet.getAutoFilters();        //设置筛选器的添加范围        filters.setRange(sheet.getCellRange(1,1,16,8));        //在第一列添加筛选器并设置单元格背景颜色为A1的筛选条件        filters.addFillColorFilter(0, sheet.getCellRange("A1").getStyle().getColor());        //运行筛选功能        filters.filter();        //保存文档        wb.saveToFile("output/ColorFilter.xlsx", ExcelVersion.Version2013);    }}

设置效果:

07cc13436bb1fd3cf16ba6e9aacf2a3b.png

【示例4】设置日期筛选

import com.spire.xls.ExcelVersion;import com.spire.xls.Workbook;import com.spire.xls.Worksheet;import com.spire.xls.collections.AutoFiltersCollection;import com.spire.xls.core.spreadsheet.autofilter.DateTimeGroupingType;public class DateFilter {    public static void main(String[] args) {        //加载Excel示例文档        Workbook wb = new Workbook();        wb.loadFromFile("C:甥敳獲Test1DesktopSample.xlsx");        //获取第一张工作表        Worksheet sheet = wb.getWorksheets().get(0);        //获取AutoFiltersCollection对象        AutoFiltersCollection filters = sheet.getAutoFilters();        //设置筛选器的添加范围        filters.setRange(sheet.getCellRange(1,1,16,8));        //在第一列添加筛选器并设置日期为2020年3月的筛选条件        filters.addDateFilter(0, DateTimeGroupingType.Month, 2020, 2, 1, 0, 0, 0 );        //运行筛选功能        filters.filter();        //保存文档        wb.saveToFile("output/DateFilter.xlsx", ExcelVersion.Version2013);    }}

设置效果:

ab652b71fa47dcb2770e397fe7b9c842.png

(本文完)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值