簡體   English   中英

如何僅鎖定Excel工作表中的單元格內容

[英]How to lock only cell content in Excel sheet

我正在使用Java POI庫將某些數據導出到Excel。 此數據中的某些單元格必須是只讀的。 我做到了:

CellStyle lockedCell = workbook.createCellStyle();
lockedCell.setLocked(true);
cell.setCellStyle(lockedCell);

然后:

workbook.getSheetAt(workbook.getActiveSheetIndex()).protectSheet("");

它工作得很好,但是有一個問題-我無法修改包含鎖定單元格的列的寬度。

是否可以僅鎖定單元格的內容,以便修改列的寬度?

我認為不可能僅在鎖定的單元格上允許用戶寬度修改。

您可以做的是,在填充數據后,調用autoSizeColumn(colNumber); 在工作表上填充的每一列。

int colMaxLength = workbook.getActiveSheetIndex().getRow(0).getLastCellNum();
HSSFSheet activeSheet = workbook.getSheetAt(workbook.getActiveSheetIndex());
for(int i = 0 ; i < colMaxLength ; i++){
   activeSheet.autoSizeColumn(i);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM