java poi excel操作 下拉菜单 及数据有效性
1 private InputStream updateTemplateStyleHSSF(InputStream inputStream,CsCustCon csCustCon) throws IOException, DAOException{
HSSFWorkbook workbook = new HSSFWorkbook(inputStream);
HSSFSheet firstSheet= workbook.getSheetAt(0);
List<String> strList=csConAcceDao.getAcceNameAndNoListByConId(csCustCon);
String[] strs=(String[])strList.toArray(new String[strList.size()]);
String secondSheetName="合同附件名称和编号";
HSSFSheet secondSheet= workbook.createSheet(secondSheetName);
if(null!=strs&&strs.length>0){
for(int i=0;i<strs.length;i++){
HSSFRow row=secondSheet.createRow(i);
HSSFCell cell= row.createCell(0);
cell.setCellValue(strs[i]);
}
}
Name name=workbook.createName();
name.setNameName(secondSheetName);
name.setRefersToFormula(secondSheetName+"!$A$1:$A$"+strs.length);
CellRangeAddressList newStyleRange=new CellRangeAddressList(1,65535,0,0);
DVConstraint constraint=DVConstraint.createFormulaListConstraint(secondSheetName);
HSSFDataValidation dataValidation=new HSSFDataValidation(newStyleRange, constraint);
dataValidation.setShowPromptBox(true);
firstSheet.addValidationData(dataValidation);
ByteArrayOutputStream out=new ByteArrayOutputStream();
workbook.write(out);
byte[] contents=out.toByteArray();
InputStream newInputStream= new ByteArrayInputStream(contents);
return newInputStream;
}
需求说明:excel 第一页 第一列为下拉菜单 菜单的数据在第二页全部显示出来
如果 在第二页删除了一项 保存后 第一页第一列下拉菜单中 的数据就少一项
List<String> strList=csConAcceDao.getAcceNameAndNoListByConId(csCustCon);
这行代码为 返回下拉菜单中的数据
参数
InputStream inputStream 为 file 对象生成的 file 对象则是 对应的要解析的excel 生成的
ByteArrayOutputStream out=new ByteArrayOutputStream();
workbook.write(out);
byte[] contents=out.toByteArray();
InputStream newInputStream= new ByteArrayInputStream(contents);
return newInputStream;
这段代码为 excel 更新后 重新保存 excel 文件
另:
HSSFWorkbook 对象 只能处理 2003及以前版本
XSSFWorkbook 对象 处理 2007及以后版本
java poi excel操作 下拉菜单 及数据有效性的更多相关文章
- 『心善渊』Selenium3.0基础 — 13、Selenium操作下拉菜单
目录 1.使用Selenium中的Select类来处理下拉菜单(推荐) 2.下拉菜单对象的其他操作(了解) 3.通过元素二次定位方式操作下拉菜单(重点) (1)了解元素二次定位 (2)示例: 页面中的 ...
- excel设置下拉菜单,并且不同值会显示不同颜色
工作中常常要用的excel,每次都会有新的需求,然后不会,然后百度,然后过段时间可能就又忘了,于是就想说,自己记录下来~~~因为自己用的都是2010,其实哪个版本都差不多,都是应该可以找到相应的按钮滴 ...
- Excel添加下拉菜单
一.选中需要下拉菜单的单元格 二.数据--数据校验 三 .选择序列,填写来源 四.保存
- Python+Selenium笔记(八):操作下拉菜单
(一) Select类 Select类是selenium的一个特定的类,用来与下拉菜单和列表交互. 下拉菜单和列表是通过HTML的<select> 元素实现的.选择项是通过<sele ...
- Excel设置下拉菜单并隐藏下拉菜单来源单元格内容
一.问题来源 做实验室的进展统计表,老师让加上开始时间和完成时间,时间格式:周几_上午(下午.晚上). 这样就可以了做下拉菜单,方便填写,而且格式统一,方便查看. 二.解决办法 2.1 下来菜单 红框 ...
- 使用EXCEL设置“下拉菜单”选项功能
原创作品.出自 "深蓝的blog" 博客.欢迎转载.转载时请务必注明出处,否则有权追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlo ...
- java poi excel操作 把第一列放到最后去
@Override public void adjustExcleColumnPosition(String filePath,int col) throws Exception{ File file ...
- Excel 二级下拉菜单
http://jingyan.baidu.com/article/cd4c2979f31967756f6e6066.html http://hi.baidu.com/chenshake/item/e1 ...
- Selenium下拉菜单(Select)的操作-----Selenium快速入门(五)
对于一般元素的操作,我们只要掌握本系列的第二,三章即可大致足够.对于下拉菜单(Select)的操作,Selenium有专门的类Select进行处理.文档地址为:http://seleniumhq.gi ...
随机推荐
- 安装php后无法动态加载库
安装Apache.mysql.PHP并配置完成后使用phpinfo测试显示正常,但是无法动态增加库 原因:安装PHP后不会生成php.ini文件,但是phpinfo测试正常 解决方法: 1.查看配置文 ...
- python扫描端口脚本
# -*- coding:utf8 -*- # # Python: 2.7.8 # Platform: Windows # Authro: wucl # Program: 端口扫描 # History ...
- HashMap出现Hash DOS攻击的问题
随着RESTful风格的接口普及,程序员默认都会使用json作为数据传递的方式.json格式的数据冗余少,兼容性高,从提出到现在已被广泛的使用,可以说成为了Web的一种标准.无论我们服务端使用什么语言 ...
- SharePoint开启错误提示
1,打开80下面的Web.config文件2,CallStack="true" 和 <customErrors mode="Off" /> < ...
- Python3学习之路~5.9 xml处理模块
xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,不过,以前在json还没诞生的时候,大家只能选择用xml,至今很多传统公司如金融行业的很多系统的接口还主要 ...
- 原生JavaScript写select下拉选择后跳转页面
<select name="molsel_oprate" onchange="javascript:var obj = event.target; var inde ...
- python数据结构-如何为元组中的每个元素命名
如何为元组中的每个元素命名 简述 当对象数据格式固定时,用元组比列表更节省内存空间, 我们使用索引访问元组元素,但是这种访问方式会降低程序的可读性. 举个栗子 对于学生的信息,我们有固定的数据格式,我 ...
- cocos2d-x 贡献一个oss上传脚本
平常写前端项目和H5游戏时特别频繁的一个操作就是上传到oss上,特别浪费时间.所以用ali-oss写了一个脚本.配置属性后直接npm run oss就能上传到oss上了.再也不需要手动操作.现在是脚本 ...
- 灵雀云率先成为 Linux 基金会/CNCF官方认证培训合作伙伴
近日,灵雀云Alauda成为Linux基金会/CNCF授权培训伙伴项目( Linux Foundation Authorized Training Partner Program,以下简称ATP)在国 ...
- [Android] 转-RxJava+MVP+Retrofit+Dagger2+Okhttp大杂烩
原文url: http://blog.iliyun.net/2016/11/20/%E6%A1%86%E6%9E%B6%E5%B0%81%E8%A3%85/ 这几年来android的网络请求技术层出不 ...