/**
* 设置单元格值
*
* @param workbook 工作簿对象
* @param cellName 单元格名
* @param value 值
* @throws Exception
*/
public static void setCellValue(Workbook workbook, String cellName, String value) throws Exception {
WorksheetCollection worksheetCollection = workbook.getWorksheets();
NameCollection nameCollection = worksheetCollection.getNames();
for (int i = 0; i < nameCollection.getCount(); i++) {
Name name = nameCollection.get(i);
String text = name.getText().trim();
if (!text.equals(cellName)) {
continue;
}
ReferredArea[] referredAreas = name.getReferredAreas(true);
if (referredAreas == null) {
continue;
}
for (ReferredArea referredArea : referredAreas) {
String sheetName = referredArea.getSheetName();
Worksheet worksheet = worksheetCollection.get(sheetName);
Cell cell = worksheet.getCells().get(referredArea.getStartRow(), referredArea.getStartColumn());
cell.setValue(value);
}
}
}
//调用样例
try {
//获取许可
getLicense();
Workbook workbook = new Workbook("E:\\Java_Test\\工序图表A3.xlsx");
setCellValue( workbook, "批准", "lgl");
workbook.save("E:\\Java_Test\\工序图表A3.xlsx", SaveFormat.XLSX);
System.out.println("sucess");
} catch (Exception e) {
e.printStackTrace();
} finally {
}