`

Java 设置Excel数据验证(数据有效性)

阅读更多

数据验证是Excel 2013版本中,数据功能组下面的一个功能,在Excel2013之前的版本,包含Excel2010 Excel2007称为数据有效性。通过在excel表格中设置数据验证可有效规范数据输入。设置数据类型时,可设置如验证数字(数字区间/数字类型)、日期、文本长度等。下面通过Java程序代码演示数据验证的设置方法及结果。

 

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

注:可通过官网下载,并解压将lib文件夹下的jar文件导入java程序;或者通过maven下载导入

 

 

 

Java示例

import com.spire.xls.*;

public class DataValidation {
    public static void main(String[] args) {
        //创建Workbook对象
        Workbook workbook = new Workbook();

        //获取第一个工作表
        Worksheet sheet = workbook.getWorksheets().get(0);

        //在单元格B3中设置数字验证-仅允许输入1到100之间的数
        sheet.getCellRange("B2").setText("请输入1-100之间的数:");
        CellRange rangeNumber = sheet.getCellRange("B3");
        rangeNumber.getDataValidation().setCompareOperator(ValidationComparisonOperator.Between);
        rangeNumber.getDataValidation().setFormula1("1");
        rangeNumber.getDataValidation().setFormula2("100");
        rangeNumber.getDataValidation().setAllowType(CellDataType.Decimal);
        rangeNumber.getDataValidation().setErrorMessage("Please input correct number!");
        rangeNumber.getDataValidation().setShowError(true);
        rangeNumber.getCellStyle().setKnownColor(ExcelColors.Color21);

        //在单元格B6中设置日期验证-仅允许输入1/1/1970到12/31/1970之间的日期
        sheet.getCellRange("B5").setText("请输入1/1/1970-12/31/1970之间的日期:");
        CellRange rangeDate = sheet.getCellRange("B6");
        rangeDate.getDataValidation().setAllowType(CellDataType.Date);
        rangeDate.getDataValidation().setCompareOperator(ValidationComparisonOperator.Between);
        rangeDate.getDataValidation().setFormula1("1/1/1970");
        rangeDate.getDataValidation().setFormula2("12/31/1970");
        rangeDate.getDataValidation().setErrorMessage("Please input correct date!");
        rangeDate.getDataValidation().setShowError(true);
        rangeDate.getDataValidation().setAlertStyle(AlertStyleType.Warning);
        rangeDate.getCellStyle().setKnownColor(ExcelColors.Color16);

        //在单元格B9设置字符长度验证-仅允许输入5个字符以内的文本
        sheet.getCellRange("B8").setText("请输入不超过5个字符的文本:");
        CellRange rangeTextLength = sheet.getCellRange("B9");
        rangeTextLength.getDataValidation().setAllowType(CellDataType.TextLength);
        rangeTextLength.getDataValidation().setCompareOperator(ValidationComparisonOperator.LessOrEqual);
        rangeTextLength.getDataValidation().setFormula1("5");
        rangeTextLength.getDataValidation().setErrorMessage("Enter a Valid String!");
        rangeTextLength.getDataValidation().setShowError(true);
        rangeTextLength.getDataValidation().setAlertStyle(AlertStyleType.Stop);
        rangeTextLength.getCellStyle().setKnownColor(ExcelColors.Color14);

        //在单元格B12设置数字验证-仅允许输入大于等于18的整数
        sheet.getCellRange("B11").setText("请输入大于等于18的整数:");
        CellRange rangeinteger = sheet.getCellRange("B12");
        rangeinteger.getDataValidation().setAllowType(CellDataType.Integer);
        rangeinteger.getDataValidation().setCompareOperator(ValidationComparisonOperator.GreaterOrEqual);
        rangeinteger.getDataValidation().setFormula1("18");
        rangeinteger.getDataValidation().setErrorMessage("Enter a Valid String!");
        rangeinteger.getDataValidation().setShowError(true);
        rangeinteger.getDataValidation().setAlertStyle(AlertStyleType.Stop);
        rangeinteger.getCellStyle().setKnownColor(ExcelColors.LightGreen1);

        //第二列自适应宽度
        sheet.autoFitColumn(2);

        //保存文档
        workbook.saveToFile("DataValidation.xlsx", ExcelVersion.Version2016);
    }
}

 

 

(本文完)

 

0
1
分享到:
评论

相关推荐

    java解析excel并做数据有效性校验

    本篇将详细介绍如何使用Java来解析Excel文件,并进行数据有效性校验。 1. **Java解析Excel库** 在Java中,有多个库可以用来解析Excel文件,如Apache POI、JExcelAPI、SimpleExcel等。Apache POI是目前最广泛使用的...

    java处理excel数据

    本文将深入探讨如何使用Java有效地读取、筛选Excel中的数据。 首先,要处理Excel数据,我们需要引入相应的库。Apache POI是一个流行的开源Java API,专门用于处理Microsoft Office格式的文件,包括Excel(.xlsx和....

    Java读取大数据量Excel的方法(POI)

    在Java编程中,处理大数据量的Excel文件是一项挑战,因为Excel文件可能包含成千上万行数据。Apache POI是一个流行的库,专为处理Microsoft Office文档(如Excel)而设计,它提供了API来读取、写入和修改这些文件。在...

    java读取Excel数据.pdf

    总之,Java Excel API为Java开发者提供了方便的工具,能够有效地处理Excel文件,实现与Excel数据的交互。结合上述代码示例,你可以构建自己的功能,例如数据导入、导出、分析等,满足各种业务需求。

    Excel-nurbs-java_java_excel_

    标题中的“Excel-nurbs-java”暗示了这个项目是关于使用Java编程语言处理NURBS(Non-Uniform Rational ...通过学习和理解这些知识点,开发者可以有效地构建和维护这样的Java程序,实现NURBS数据与Excel之间的高效交互。

    excel导入动态校验,自定义注解动态校验

    动态校验的关键在于灵活性,它可以适应不同的业务需求,例如检查数据的有效性(如日期格式、数值范围)、唯一性(如避免重复记录)和完整性(如必填字段不能为空)等。 自定义注解动态校验则是在编程环境中,通过...

    简单java做excel解析并验证插入数据库.pdf

    更复杂的验证可能包括检查数据的有效性、格式一致性等。 最后,数据插入数据库通常是通过JDBC(Java Database Connectivity)实现的。虽然在给定的代码段中没有直接展示数据库操作,但可以推测在`ExcelService`中,...

    Java+Excel接口测试框架源码

    总的来说,Java+Excel接口测试框架提供了一种灵活、可扩展的解决方案,适用于各种规模的项目,帮助开发者和测试工程师有效地管理和执行接口测试,确保系统的稳定性和可靠性。通过深入理解和运用这种框架,我们可以...

    poi导出下拉列表,数据有效性

    在这个场景中,我们关注的是如何使用POI来创建具有下拉列表功能的Excel文件,并设置数据有效性规则。这通常在数据录入或者表格模板制作时非常有用,可以确保用户输入的数据符合预设的选项。 首先,我们需要理解在...

    数据导入导出 (java)

    综上所述,Java在数据导入导出方面提供了强大的工具和库,通过合理的设计和实现,可以有效地处理各种数据格式,满足各种业务需求。在实践中,我们需要结合具体业务场景,选择合适的方法和技术,确保数据的安全、高效...

    java 利用POI对Execel表格的统一导入与校验(利用Hibernate Validator)

    通过上述解释,我们可以看出,Java利用Apache POI和Hibernate Validator进行Excel表格的统一导入与校验,既简化了开发工作,又提高了数据处理的准确性和灵活性。这样的解决方案在大数据处理、报表导入等场景下具有...

    Java Excel Api及详细教程

    - 数据验证:设置单元格的数据有效性规则,如日期范围、数字范围等。 - 函数和公式:支持Excel内置的数学、统计等函数,以及自定义公式。 - 事件处理:监听工作簿、工作表或单元格的改变,实现动态响应。 通过学习...

    基于Java的批量数据导入及验证技术的研究与应用.docx

    总结来说,基于Java的批量数据导入及验证技术是解决大数据量录入问题的有效手段,它结合了Java的强大功能、Excel处理库以及文件上传组件,提高了数据管理的自动化程度和准确性。在石油行业以及其他需要大量数据管理...

    POI导出Excel万级数据分页实现 解决内存溢出问题

    此外,项目中提供的数据库dmp文件可能是用于恢复数据库状态的,以便在测试环境中重现问题或验证解决方案的有效性。确保正确导入dmp文件到相应的数据库,然后按照项目代码中的指示执行。 总结来说,这个项目提供了一...

    Excel上传并解析java对象

    在IT行业中,Excel上传并解析Java对象是一项常见的数据处理任务,尤其在数据分析、报表生成以及数据导入导出等场景中尤为常见。这个过程涉及到的主要技术包括文件上传、Excel读取、数据转换以及Java对象映射。下面将...

    java编辑excel api

    - 数据验证:设置单元格的数据有效性规则。 8. **性能优化** - 对于大型文件,考虑使用SXSSF(Streaming Usermodel API)代替XSSFWorkbook,它可以在内存有限的情况下处理大量数据。 - 使用`workbook.write()`和...

    Excel数据读写到sql

    3. 编写代码或使用工具:可以使用编程语言如Python(pandas库)或Java(Apache POI库)编写脚本来读取Excel数据并插入到SQL数据库。也可以使用数据库自带的导入导出工具,比如SQL Server的SSIS(SQL Server ...

    JavaExcel API及

    在使用JavaExcel API时,这可能涉及检查数据类型、处理空值、异常处理以及验证数据的正确性。例如,如果读取的单元格期望是日期类型,但实际包含文本,那么需要有适当的错误处理机制。 5. **文件操作**: Java...

    Spire.XLS for Java读写删Excel

    Spire.XLS for Java 是一款专业的 Java Excel 组件,开发人员使用它可以在 Java 应用程序中轻松实现创建、操作、转换和打印 Excel 工作表,并且运行环境无需安装 Microsoft Office 或 Microsoft Excel。

    EXCEL数据核对数据对碰软件(增加模糊对比)

    总的来说,这款EXCEL数据核对软件通过模糊对比功能提高了数据处理的准确性和效率,其背后依赖于一系列的库文件和可能的PowerBuilder以及Java技术,以提供强大的数据处理能力和灵活的用户界面。通过安装和运行这些...

Global site tag (gtag.js) - Google Analytics