poi是读写excel最常用的一个开源中间件,实际使用中我们可能会遇到这样的需求:限制某列单元格只能输入特定的内容,这就是excel的下拉列表特性,以下是wps中excel的一个截图:

从上图可以看出,维护下拉选项有两种方式:

1.手动添加下拉选项

2.从单元格选择下拉选项

第一种方式的缺点就是单元格字节数不能超过255个字,笔者在实际使用中输入的内容远超过这个数,所以笔者选择的是第二种方案,笔者新建了一个sheet,在这个sheet中某列输入实际需要的下拉列表内容(可以动态插入),比如省市,然后隐藏这个sheet即可,这样用户在使用过程中就可以根据这个模板文件输入限制的内容。下面就贴实际使用过程中分代码:

String strFormula = "sheet名字!$A$1:$A$100";
            XSSFDataValidationConstraint constraint = new XSSFDataValidationConstraint(ValidationType.LIST,strFormula);
            // 设置数据有效性加载在哪个单元格上,四个参数分别是:起始行、终止行、起始列、终止列
            CellRangeAddressList regions = new CellRangeAddressList(0,800, 12, 12);
            // 数据有效性对象
            DataValidationHelper help = new XSSFDataValidationHelper((XSSFSheet)sheet);
            DataValidation validation = help.createValidation(constraint, regions);
            sheet.addValidationData(validation);

上面的代码就可以实现exel的下拉列表选择功能,而且不限制下拉列表长度!!

poi设置单元格下拉下表相关推荐

  1. POI 设置单元格格式,单元格合并,自动列宽等

    POI 设置单元格格式,单元格合并,自动列宽等 设置单元格样式 设置单元格背景 设置单元格合并 解决合并单元格遗留空白边框问题 设置单元格列宽自适应 设置单元格样式 第一种:日期格式 cell.set ...

  2. easyExcel导出数据并设置单元格下拉数据

    easyExcel由于导出和导入的注解差异,所以实现不了标题功能 此处不在介绍导出导出的注解 entity: @DropDownSetField自行封装注解:稍后解释 public class Sal ...

  3. poi设置单元格背景颜色

    Java使用poi可以很方便地导出Excel表格文件,同时可以设置各种样式,例如背景颜色.下面给出两个例子设置背景颜色,一个使用自带的颜色设置背景颜色,一个使用自定义颜色设置. 使用内置的颜色设置单元 ...

  4. poi 设置单元格边框

    //设置单元格样式 CellStyle comm = workbook.createCellStyle(); comm.setAlignment(HorizontalAlignment.CENTER) ...

  5. java 自动行高,20191012——POI设置单元格自动行高(思路)

    在经过Jxls或者POI导出数据至excel中后,发现有的单元格内容太多,既没有自动换行,也没有自动增大行高.那如何通过Java代码来实现呢?请看下面步骤: (一)首先,将excel设置为最合适的行高 ...

  6. POI设置单元格自动行高的思路

    在经过Jxls或者POI导出数据至excel中后,发现有的单元格内容太多,既没有自动换行,也没有自动增大行高.那如何通过Java代码来实现呢?请看下面步骤: (一)首先,将excel设置为最合适的行高 ...

  7. 20191012——POI设置单元格自动行高(思路)

    在经过Jxls或者POI导出数据至excel中后,发现有的单元格内容太多,既没有自动换行,也没有自动增大行高.那如何通过Java代码来实现呢?请看下面步骤: (一)首先,将excel设置为最合适的行高 ...

  8. POI设置单元格格式

    /**设置单元格格式为文本格式*/ HSSFCellStyle textStyle = workBook.createCellStyle(); HSSFDataFormat format = work ...

  9. POI 设置单元格背景色,背景色编码与实际颜色对照表(SXSSFWorkbook4.1.2)

    本次用的poi的版本是4.1.2  SXSSFWorkbook wb = new SXSSFWorkbook();   CellStyle style = wb.createCellStyle(); ...

最新文章

  1. C++ STL: 容器vector源码分析
  2. PTA(BasicLevel)-1007素数对猜想
  3. linux基本命令iscsiadm,tgtadm和iscsiadm命令的用法
  4. python画图-Python基础-画图:matplotlib
  5. 批处理创建程序的快捷方式
  6. CentOS7 安装或迁移 wordpress(完整迁移)
  7. centos 安装jdk_新Jenkins实践-第2章 JENKINS SERVER的安装部署方式
  8. [2011诺贝我物理奖]超新星与暗能量的收现
  9. leetcode 31. Next Permutation(字典序的下一个)
  10. 广东2022年上半年系统集成项目管理工程师下午真题及答案解析
  11. qq盗号的小插件 各位同胞注意别被骗了
  12. 水滴筹、轻松筹干架,从线上到线下:员工医院互殴引围观
  13. win10开机自动运行bat脚本
  14. 电脑PHP动画制作画板,涂鸦板简单实现 Html5编写属于自己的画画板
  15. Java批量下载并打成压缩包zip格式
  16. GeForce RTX 3090深度学习测评
  17. Mac无法开机?别着急看这里
  18. TOUGH2系列建模方法及在CO2地质封存、水文地球化学、地热、地下水污染等领域中的实践技术应用
  19. Python攻关之文件操作
  20. 服务器装系统进pe界面就死机了,进入PE后安装系统老是会卡住。是什么问题啊。...

热门文章

  1. 【050】SylixOS全面支持C-SKY系列处理器
  2. mysql 1032 1062_【转】如何使用slave_exec_mode优雅的跳过1032 1062的复制错误
  3. vue中报错, [WDS] Disconnected!解决方法
  4. Spring Cloud项目是如何读取bootstrap.properties文件的?
  5. pe如何查看计算机用户名,用PE如何查看系统版本
  6. 数学符号发音及英文表达
  7. Netty4实战第六章:ChannelHandler
  8. 猜价格游戏c语言课程设计,肿么用C#编写一个猜价格的小程序?
  9. CSS选择器 :first-of-type/:last-of-type/ :first-child/:last-child 用法
  10. 文本文件和二进制文件的区别和联系