java设置excel行不可编辑_Excel Headers 不可编辑的poi
使用 XSSF 可以实现以下目标:
将 CellStyle 设置为 setLocked false作为所有列的默认样式 . 这可以通过设置具有min col 1和max col 16384的 org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCol 元素来设置该样式 .
然后通过为该行设置 CustomFormat true从该样式中取出第1行 . 因此它不会对所有列使用默认样式 . 附加设置 CellStyle ,其中 setLocked 为true,作为该行的默认样式 . 这可以通过从该行获取 org.openxmlformats.schemas.spreadsheetml.x2006.main.CTRow 元素并在那里设置 CustomFormat 和 S (样式)来实现 .
结果:除第1行外,所有单元格均已解锁 .
例:
import java.io.*;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.*;
public class CreateExcelSheetProtectOnlyFirstRow {
public static void main(String[] args) throws Exception {
Workbook workbook = new XSSFWorkbook();
//create a CellStyle having setLocked false
CellStyle cellstyleUnprotect = workbook.createCellStyle();
cellstyleUnprotect.setLocked(false);
//create a CellStyle having setLocked true
CellStyle cellstyleProtect = workbook.createCellStyle();
cellstyleProtect.setLocked(true);
Sheet sheet = workbook.createSheet("Sheet1");
//set the CellStyle having setLocked false as the default style for all columns
org.openxmlformats.schemas.spreadsheetml.x2006.main.CTCol cTCol =
((XSSFSheet)sheet).getCTWorksheet().getColsArray(0).addNewCol();
cTCol.setMin(1);
cTCol.setMax(16384);
cTCol.setWidth(12.7109375);
cTCol.setStyle(cellstyleUnprotect.getIndex());
Row row = sheet.createRow(0);
//set CustomFormat true for that row
//so it does not using the default style for all columns
//and set the CellStyle having setLocked true as the default style for that row
org.openxmlformats.schemas.spreadsheetml.x2006.main.CTRow cTRow =
((XSSFRow)row).getCTRow();
cTRow.setCustomFormat(true);
cTRow.setS(cellstyleProtect.getIndex());
for (int c = 0; c < 3; c++) {
row.createCell(c).setCellValue("Header " + (c+1));
}
sheet.protectSheet("password"); // protect sheet
workbook.write(new FileOutputStream("CreateExcelSheetProtectOnlyFirstRow.xlsx"));
workbook.close();
}
}
java设置excel行不可编辑_Excel Headers 不可编辑的poi相关推荐
- 【poi第五节】poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色
poi设置Excel单元格边框 和 背景色,java设置Excel 单元格边框 和 背景色 import org.apache.poi.hssf.usermodel.HSSFWorkbook; imp ...
- java设置excel单元格格式为百分比_Java 设置Excel条件格式示例代码(高亮条件值、应用单元格值/公式/数据条等类型)...
概述 在Excel中,应用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种条件格式.本篇文章,将通过Java程序示例介绍条件格式的设置方法,设置条 ...
- poi设置excel行高
poi设置excel行高其实百度到处都是,不外乎就是 HSSFRow row = sheet.getRow(rowNum); row.setHeight(height); 但是有一个行高为0的行,如果 ...
- 如何通过VB合并Excel单元格以及设置Excel行高?VB创建Excel表格,合并单元格,生成图形等操作
如何通过VB合并Excel单元格以及设置Excel行高? 例如:我想把第一列的第4,5,6,7行合并...我在怎样让合并单元格里的字居中,怎样改变字体. 请不吝赐教... ============== ...
- 【poi第七节】poi设置excel 设置字体格式,java设置excel设置字体格式
poi设置excel 设置字体格式,java设置excel设置字体格式 import org.apache.poi.hssf.usermodel.HSSFRichTextString; import ...
- Java 设置Excel自适应行高、列宽
在excel中,可通过设置自适应行高或列宽自动排版,是一种比较常用的快速调整表格整体布局的方法.设置自适应时,可考虑2种情况: 1.固定数据,设置行高.列宽自适应数据(常见的设置自适应方法) 2.固定 ...
- java设置Excel单元格格式 POI
POI中可能会用到一些需要设置EXCEL单元格格式的操作小结:先获取工作薄对象:HSSFWorkbook wb = new HSSFWorkbook();HSSFSheet sheet = wb.cr ...
- fastadmin 数据导出,设置excel行高和限制图片大小
起因是一个项目的图片导出到excel之后太大了,需要调整一下大小,这个fastadmin自带的前端导出就可以实现,但是也是比较复杂的,需要搞清楚图片的代码 在require-table.js这个文件里 ...
- java 设置excel颜色_Java 为 Excel 中的行设置交替背景色
在制作 Excel表格 时, 通过 将 数据表中上下 相邻的两行用不同的背景色填充 ,可以使 各行的数据看起来更清楚 ,避免 看错行 ,同时也能增加 Excel 表 格的美观度 . 本文 将 介绍 如 ...
最新文章
- servlet设置session追踪模式
- mini-uboot 启动过程简单分析
- 学python推荐书籍-零基础学python推荐几本python学习的书籍
- linux 下基于jrtplib库的实时传送实现
- 快速搭建LNMP(1 )
- 收入和贷款有什么关系?
- AgileConfig 1.6.0 发布 - 支持服务注册与发现
- html5边框闪烁,HTML – CSS框阴影动画像素艺术闪烁
- 【Tensorflow深度学习】Tensorflow2.0GPU版极简安装
- 用ASP.NET Core 2.0 建立规范的 REST API -- GET 和 POST
- C4D OC渲染器混合材质置换问题求助
- 高通骁龙845的android手机有哪些,骁龙845手机买什么好 目前6款最值得买的骁龙845手机推荐...
- windows7系统的时间服务器,win7系统搭建ntp服务器的操作方法
- Win7 系统还原被管理员禁用
- LEADER_NOT_AVAILABLE
- web渗透测试实战-SQLMAP
- 危化品企业双重预防机制数字化系统怎样建?
- 天兔(Lepus 3.8)数据库监控系统部署
- RL——Policy Gradient类方法
- 数组 ,String