
一、需求:
二、期间遇到的问题
1、无法设置成不可编辑
2、设置为不可编辑,导出后发现所有单元格均不可编辑;
原因:createCell();创建单元格后,单元格默认是锁定状态;protectSheet("密码");保护工作表是保护所有锁定的单元格;
三、解决问题
不多BB,直接上代码
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wbcreateSheet("sheet名称");
HSSFCellStyle lockstyle = wbcreateCellStyle();
lockstylesetLocked(true);//设置锁定 lockstylesetFillPattern(HSSFCellStyleSOLID_FOREGROUND);
lockstylesetFillForegroundColor(IndexedColorsREDgetIndex());//设置上锁的单元格背景色
HSSFCellStyle unlockStyle=wbcreateCellStyle();
unlockStylesetLocked(false);//设置未锁定
for(int i=0;i<10;i++){
HSSFRow row = sheetcreateRow(i); for (int j = 0; j < 10; j++) {
HSSFCell cell = rowcreateCell(j);
cellsetCellStyle(unlockStyle);//默认是锁定状态;将所有单元格设置为:未锁定;然后再对需要上锁的单元格单独锁定
if(j==1){//这里可以根据需要进行判断;我这就将第2列上锁了
cellsetCellStyle(lockstyle);//将需要上锁的单元格进行锁定
cellsetCellValue("上锁了");
}else{
cellsetCellValue("没上锁了");
}
}
} //sheet添加保护,这个一定要否则光锁定还是可以编辑的
sheetprotectSheet("123456");
FileOutputStream os = new FileOutputStream("D:\\workbookxls");
wbwrite(os);
osclose();
四:结果
以上就是关于python如何读取excel文件全部的内容,包括:python如何读取excel文件、如何将一个excel工作表的数据拆分成多个sheet、利用COM技术实现外壳扩展的属性页等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)