excel 单元格的锁定 以及 JXL的实现方式

在使用excel表格时,有些列是不希望用户可以修改的,诸如审计日志里面确定的部分,而审计人,审计时间等则是需要审计员进行修改的。所以就涉及到不同表格是否可以修改的情况。
 
1在excel中方法如下: 
先选中希望别人填写或修改的部分,然后鼠标右键: 
设置单元格格式----保护--把锁定前面的对号清除--确定 
然后选 工具--保护--保护工作表 (密码自己掌握,怕忘就空) --确定 

2 先在要设置锁定的单元格属性中设置,“单元格格式”——“保护”——“锁定”,然后把开放的单元格属性中的“锁定”取消。然后点菜单“工具”——“保护” ——“保护工作表”——“保护工作表及锁定的单元格内容”,将“允许次工作表的所有用户进行”下面的复选框除“选定锁定单元格”外的全部打勾就可以了,你 还可以设定一个保护密码。
 
当然,如果通过JXL来操作导出的单元格,还要使用以下方式:
 
先在代码中新建一个“解锁”的格式如下:
jxl.write.WritableCellFormat format_unlock = new jxl.write.WritableCellFormat();
    format_unlock.setLocked(false);
 
确定你将要导出的excel文件:
OutputStream os = new FileOutputStream(excelName+".xls");
     WritableWorkbook wwb = Workbook.createWorkbook(os);
     WritableSheet ws = wwb.createSheet(excelName, 0);
 
查找所需的列,加入新的cell,同时为该cell设置format为解锁
if(fieldlist.get(i).getAttribute().equals("something")){
        ws.addCell(new Label(i, row, ee.getsomething()));
        ws.getWritableCell(i, row).setCellFormat(format_unlock);
       }
 
最后在sheet中设置该表单为protected格式
ws.setProtected(true);

你可能感兴趣的:(Excel)