当前位置: 首页 > news >正文

java excel xlsx 增加数据验证

隐藏表下拉框

   // 创建隐藏工作表存储下拉框数据String hiddenSheetName = "HiddenSheet"+System.currentTimeMillis();Sheet hiddenSheet =  workbook.createSheet(hiddenSheetName);//设置隐藏sheetworkbook.setSheetHidden(workbook.getSheetIndex(hiddenSheetName), true);for (int i = 0; i < dropdownList.size(); i++) {Row row = hiddenSheet.createRow(i);Cell cityCellHidden = row.createCell(0);cityCellHidden.setCellValue(dropdownList.get(i));}// 获取DataValidationHelper对象DataValidationHelper helper = mainSheet.getDataValidationHelper();// 定义数据验证的范围CellRangeAddressList addressList = new CellRangeAddressList(startRow,  65535, columnIndex, columnIndex);// 创建数据验证约束 公式可以写成"Sheet2!$A$1:$A$10"。DataValidationConstraint constraint = helper.createFormulaListConstraint(hiddenSheetName+"!$A$1:$A$"+dropdownList.size());//生成验证规则DataValidation validation = helper.createValidation(constraint, addressList);// 设置错误提示信息validation.setShowErrorBox(true);validation.setSuppressDropDownArrow(true);

下拉框

   DataValidationHelper helper = mainSheet.getDataValidationHelper();DataValidationConstraint constraint = helper.createExplicitListConstraint(dropdownList.toArray(new String[0]));CellRangeAddressList addressList = new CellRangeAddressList(startRow, 65535, columnIndex, columnIndex);DataValidation validation = helper.createValidation(constraint, addressList);validation.setShowErrorBox(true);validation.setSuppressDropDownArrow(true);mainSheet.addValidationData(validation);

时间格式及范围验证

       // 创建数据验证助手DataValidationHelper helper = sheet.getDataValidationHelper();CellRangeAddressList dateAddressList = new CellRangeAddressList(firstRow, lastRow, columnIndex, columnIndex);// 获取 LocalDateTime 的最小值LocalDateTime minLocalDateTime = LocalDateTime.MIN;// 获取 LocalDateTime 的最大值LocalDateTime maxLocalDateTime = LocalDateTime.MAX;DataValidationConstraint dataValidationConstraint = helper.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN,minLocalDateTime.format(DateTimeFormatter.ofPattern(dateFormat)),maxLocalDateTime.format(DateTimeFormatter.ofPattern(dateFormat)),dateFormat);DataValidation validation = helper.createValidation(dataValidationConstraint, dateAddressList);validation.setShowErrorBox(true);validation.setSuppressDropDownArrow(true);validation.setShowErrorBox(true);validation.createErrorBox("标题","内容");sheet.addValidationData(validation);

integer 验证

// 创建数据验证助手DataValidationHelper helper = sheet.getDataValidationHelper();CellRangeAddressList intAddressList = new CellRangeAddressList(firstRow, lastRow, columnIndex, columnIndex);// 获取 LocalDateTime 的最大值LocalDateTime maxLocalDateTime = LocalDateTime.MAX;DataValidationConstraint dataValidationConstraint = helper.createIntegerConstraint(DataValidationConstraint.OperatorType.BETWEEN,String.valueOf(Integer.MIN_VALUE),String.valueOf(Integer.MAX_VALUE));DataValidation validation = helper.createValidation(dataValidationConstraint, intAddressList);validation.setShowErrorBox(true);validation.setSuppressDropDownArrow(true);sheet.addValidationData(validation);

相关文章:

java excel xlsx 增加数据验证

隐藏表下拉框 // 创建隐藏工作表存储下拉框数据String hiddenSheetName "HiddenSheet"System.currentTimeMillis();Sheet hiddenSheet workbook.createSheet(hiddenSheetName);//设置隐藏sheetworkbook.setSheetHidden(workbook.getSheetIndex(hiddenSheetName), …...

React + TypeScript 数据血缘分析实战

React TypeScript 数据血缘分析实战 目录 技术选型与架构设计核心概念解析基础场景实现 场景一&#xff1a;visx库基础血缘图实现场景二&#xff1a;React-Lineage-DAG企业级方案场景三&#xff1a;动态数据源与复杂交互 TypeScript类型系统深度优化性能优化与工程化实践开源…...

魔搭 ModelScope 模型下载

wget https://developer.download.nvidia.com/compute/cuda/12.6.0/local_installers/cuda_12.6.0_560.28.03_linux.run sudo sh cuda_12.6.0_560.28.03_linux.run# pip -V pip 24.3.1 # pip3 -V pip 24.3.1设置pip镜像源 # pip config set global.index-url https://mirrors.…...

WorldQuant Brain的专属语言——Fast Expression

使用brain需要的编程语言 在使用BRAIN平台时往往不需要事先有编码背景&#xff0c;因此小白也能很快对其上手&#xff0c;但有经验的程序员来讲&#xff0c;该平台暂时没有禁止API通信低强度进行时的程序化访问&#xff08;但是非常不好意思&#x1f623;怎么访问我没找到&…...

在低功耗MCU上实现人工智能和机器学习

作者&#xff1a;Silicon Labs 人工智能&#xff08;AI&#xff09;和机器学习&#xff08;ML&#xff09;技术不仅正在快速发展&#xff0c;还逐渐被创新性地应用于低功耗的微控制器&#xff08;MCU&#xff09;中&#xff0c;从而实现边缘AI/ML解决方案。这些MCU是许多嵌入式…...

MSSQL2022的一个错误:未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序

MSSQL2022导入Excel的一个错误&#xff1a;未在本地计算机上注册“Microsoft.ACE.OLEDB.16.0”提供程序 一、导入情况二、问题发现三、问题解决 最近在安装新版SQLServer SSMS 2022后&#xff0c;每次导入Excel都会出现错误提示&#xff1a;未在本地计算机上注册“Microsoft.…...

(2.26 “详细分析示例“ 暴力+位运算 最长优雅子数组)leetcode 2401

a&b0说明a和b的每一位都是一个0和一个1 不存在两个均为1的位次 a|0a 0与任何数|都等于它本身 &#xff08;mask&#xff09;的作用&#xff1a; 担心两数的1在用一位导致mask覆盖了&#xff1f; 答&#xff1a;出现这种情况说明mask与nums j后就直接break 由&#xff1a;…...

【洛谷贪心算法题】P1094纪念品分组

该题运用贪心算法&#xff0c;核心思想是在每次分组时&#xff0c;尽可能让价格较小和较大的纪念品组合在一起&#xff0c;以达到最少分组的目的。 【算法思路】 输入处理&#xff1a;首先读取纪念品的数量n和价格上限w&#xff0c;然后依次读取每件纪念品的价格&#xff0c;…...

基于coze+微信小程序的ai对话

界面介绍&#xff1a; 代码&#xff1a;&#xff08;替换你的coze的配置&#xff09; <template><view class"container"><!-- 高斯模糊背景 --><view class"animated-bg"><view class"gradient-blob"></view…...

[Linux]项目自动化构建工具-make/Makefile

项目自动化构建工具-make/Makefile make与Makefile单文件Makefile多文件Makefile 缓冲区 首先理清多文件之间的关系&#xff1a; 这里为什么没有包含test.h头文件&#xff1f;因为在当前工作目录下&#xff0c;因此不需要包含test.h&#xff0c;如果把test.h移到上一级目录&…...

Dashboard-frps

通过浏览器查看 frp的状态以及代理统计信息展示。 注&#xff1a;Dashboard 尚未针对大量的 proxy 数据展示做优化&#xff0c;如果出现 Dashboard 访问较慢的情况&#xff0c;请不要启用此功能。 需要在 frps.ini中指定 dashboard服务使用的端口&#xff0c;即可开启此功能&…...

android 新增native binder service 方式(三)

书接上回&#xff0c;继续第三种方式&#xff0c;是手动生成 service binder 的方法,项目结构 1&#xff0c;编译aidl aidl 文件保持不变&#xff0c;如何生成Bn和Bp 文件呢。 aidl -I ./libserviceaidl/aidl -h ./ -o ./ --langcpp libserviceaidl/aidl/com/test/IService.a…...

(IDE接入DeepSeek)简单了解DeepSeek接入辅助开发与本地部署建议

重点&#xff1a;IDE接入DeepSeek是否收费 收费&#xff01; 本文章主要是为了给小白避雷&#xff0c;目前很多文章告诉大家怎么接入DeepSeek&#xff0c;但是并未告知大家是否收费。如果是想白嫖的&#xff0c;就可以不用去接入了。 一、引言 最近爆火的AI人工智能工具DeepSe…...

seasms v9 注入漏洞 + order by注入+​information_schema​解决方法

目录 一、当注入时&#xff0c;information_schema被禁用的解决方法 1.通过sys库可以获取到表名和库名 2.通过无列名注入join获取列名 二、seasms v9 注入漏洞 三、order by注入 一、当注入时&#xff0c;information_schema被禁用的解决方法 information_schema数据库是My…...

【实战 ES】实战 Elasticsearch:快速上手与深度实践-1.3.1单节点安装(Docker与手动部署)

&#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 文章大纲 10分钟快速部署Elasticsearch单节点环境1. 系统环境要求1.1 硬件配置推荐1.2 软件依赖 2. Docker部署方案2.1 部署流程2.2 参数说明2.3 性能优化建议 3. 手动部署方案3.1 安…...

如何使用useEffect模拟组件的生命周期?

什么是 useEffect&#xff1f; useEffect 是 React 提供的一个 Hook&#xff0c;用于处理副作用&#xff08;side effects&#xff09;。它允许你在函数组件中执行一些操作&#xff0c;这些操作通常会影响组件的渲染&#xff0c;比如数据获取、订阅、DOM 操作等。通过 useEffe…...

【DeepSeek】私有化本地部署图文(Win+Mac)

目录 一、DeepSeek本地部署【Windows】 1、安装Ollama 2、配置环境变量 3、下载模型 4、使用示例 a、直接访问 b、chatbox网页访问 二、DeepSeek本地部署【Mac】 1、安装Ollama 2、配置环境变量 3、下载模型 4、使用示例 5、删除已下载的模型 三、DeepSeek其他 …...

Python 入门教程(2)搭建环境 | 2.3、VSCode配置Python开发环境

文章目录 一、VSCode配置Python开发环境1、软件安装2、安装Python插件3、配置Python环境4、包管理5、调试程序 前言 Visual Studio Code&#xff08;简称VSCode&#xff09;以其强大的功能和灵活的扩展性&#xff0c;成为了许多开发者的首选。本文将详细介绍如何在VSCode中配置…...

Wireshark详解

Wireshark使用详解 1.Wireshark 简介2.下载与安装1. 下载地址2. 安装步骤&#xff08;以 Windows 为例&#xff09; 3. 界面与核心功能1. 主界面布局2. 常用菜单功能 4. 过滤功能详解1. 过滤类型2. 常用过滤命令 5. 过滤命令与网络结构对应6. 使用注意事项7. 案例分析 TCP 三次…...

《从零开始掌握Python:一份全面的学习指南》

一、为什么选择Python? Python以其简洁优雅的语法和强大的生态系统成为全球最受欢迎的编程语言之一。无论是开发网站、分析数据、构建人工智能模型,还是自动化办公,Python都能轻松胜任。 学习门槛低:代码如英文般直观,例如 print("Hello, World!")。 应用领域广…...

微信聊天记录数据备份与智能分析一站式解决方案

微信聊天记录数据备份与智能分析一站式解决方案 【免费下载链接】WeChatMsg 提取微信聊天记录&#xff0c;将其导出成HTML、Word、CSV文档永久保存&#xff0c;对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChatMsg 你是否经…...

WechatBakTool聊天记录管理工具全攻略

WechatBakTool聊天记录管理工具全攻略 【免费下载链接】WechatBakTool 基于C#的微信PC版聊天记录备份工具&#xff0c;提供图形界面&#xff0c;解密微信数据库并导出聊天记录。 项目地址: https://gitcode.com/gh_mirrors/we/WechatBakTool 一、问题诊断&#xff1a;聊…...

超声AI 2026年市场格局:头部公司怎么选、谁在领跑

超声AI哪家做得好&#xff1f;”这个问题&#xff0c;2026年再用“列公司名单”的方式回答&#xff0c;其实已经不太够用了。因为医疗AI的竞争早就不只拼演示效果&#xff0c;更像一场硬仗&#xff1a;能不能上临床、敢不敢用、用得起、用得开。你最终要的不是“看起来很强”&a…...

2025界面字体设计效率提升指南:Bebas Neue开源字体全解析

2025界面字体设计效率提升指南&#xff1a;Bebas Neue开源字体全解析 【免费下载链接】Bebas-Neue Bebas Neue font 项目地址: https://gitcode.com/gh_mirrors/be/Bebas-Neue 在数字界面设计领域&#xff0c;字体选型直接影响用户体验与开发效率。作为2025年最受瞩目的…...

FUTURE POLICE模型推理服务化:使用FastAPI构建高性能API网关

FUTURE POLICE模型推理服务化&#xff1a;使用FastAPI构建高性能API网关 想把训练好的FUTURE POLICE模型变成一个随时可以调用的服务吗&#xff1f;比如&#xff0c;让一个移动应用上传一段音频&#xff0c;就能立刻收到模型的分析结果。自己写个简单的脚本虽然也能跑&#xf…...

OpenClaw+Qwen2.5-VL-7B学术助手:论文图表解析与摘要生成

OpenClawQwen2.5-VL-7B学术助手&#xff1a;论文图表解析与摘要生成 1. 为什么需要AI学术助手 作为一名经常需要阅读大量文献的研究人员&#xff0c;我长期被三个问题困扰&#xff1a;首先是PDF论文中的图表数据提取困难&#xff0c;手动转录既耗时又容易出错&#xff1b;其次…...

千问3.5-2B轻量部署最佳实践:Docker容器资源限制+GPU显存预分配配置

千问3.5-2B轻量部署最佳实践&#xff1a;Docker容器资源限制GPU显存预分配配置 1. 千问3.5-2B模型简介 千问3.5-2B是Qwen系列中的轻量级视觉语言模型&#xff0c;具备图片理解与文本生成能力。这个2B参数规模的模型在保持较高性能的同时&#xff0c;显著降低了部署门槛和资源…...

WePush邮件推送完全手册:从基础配置到批量发送的完整流程

WePush邮件推送完全手册&#xff1a;从基础配置到批量发送的完整流程 【免费下载链接】WePush 专注批量推送的小而美的工具&#xff0c;目前支持&#xff1a;模板消息-公众号、模板消息-小程序、微信客服消息、微信企业号/企业微信消息、阿里云短信、阿里大于模板短信 、腾讯云…...

本地跑 Gemma 4 替代 Claude Code?M4 Max 实测告诉你为什么行不通

文章目录引言&#xff1a;省钱的小算盘&#xff0c;打得震天响一、Gemma 4&#xff1a;Google 给本地玩家发的"甜蜜陷阱"二、Claude Code&#xff1a;云端的"灭霸级"存在三、M4 Max 实测&#xff1a;当理想照进现实&#xff0c;现实碎了3.1 第一坑&#xf…...

Nunchaku FLUX.1 CustomV3快速上手:5步搞定AI绘画,新手也能秒出图

Nunchaku FLUX.1 CustomV3快速上手&#xff1a;5步搞定AI绘画&#xff0c;新手也能秒出图 1. 为什么选择Nunchaku FLUX.1 CustomV3 如果你正在寻找一款既强大又易用的AI绘画工具&#xff0c;Nunchaku FLUX.1 CustomV3绝对值得尝试。这个定制版本在原有Nunchaku FLUX.1-dev模型…...