前言

注释及批注是 Excel 中比较常用的功能,注释往往针对单元格,起到解释说明的作用,而批注则更像是留言,评论,也允许参与者进行讨论,今天小编就将为大家介绍如何在Java中实现Excel的注释和批注。

一、注释

添加注释

Workbook wb = new Workbook();
IWorksheet worksheet = wb.getActiveSheet();

IComment commentC3 = worksheet.getRange("C3").addComment("C3的注释");
IComment commentC4 = worksheet.getRange("C4").addComment("C4的注释");
IComment commentC5 = worksheet.getRange("C5").addComment("C5的注释");

wb.save("output/memo.xlsx");

结果如下:

编辑注释

Workbook wb = new Workbook();
wb.open("output/memo.xlsx");
IWorksheet worksheet = wb.getActiveSheet();

worksheet.getRange("C3").getComment().setText("修改过的C3注释");
worksheet.getRange("C4").getComment().setText("修改过的C4注释");
worksheet.getRange("C5").getComment().setText("修改过的C5注释");


worksheet.getRange("C4").getComment().setVisible(true);

wb.save("output/editedMemo.xlsx");

结果如下:

C4 会一直保持显示状态,为了方便查看,C4 的位置在打开 Excel 以后,移动过。

删除注释

Workbook wb = new Workbook();
wb.open("output/memo.xlsx");
IWorksheet worksheet = wb.getActiveSheet();

worksheet.getRange("C3").getComment().delete();
worksheet.getRange("C4").getComment().delete();
worksheet.getRange("C5").getComment().delete();

wb.save("output/removeMemo.xlsx");

删除后,则 comment 的红色角标也不会出现,整个 sheet 为空,不做截图演示。

二、批注

添加批注

代码中,添加了一条批注,同时对这条批注添加了一条回复。

Workbook wb = new Workbook();
IWorksheet sheet = wb.getActiveSheet();
ICommentThreaded ct = sheet.getRange("C3").addCommentThreaded("批注1","韩梅梅");
ct.addReply("回复1", "李雷");
wb.save("output/comment.xlsx");

结果如下:

编辑批注

打开刚才添加代码所保存的 Excel 文件,修改批注和回复,之后再保存微信的文件。

Workbook wb = new Workbook();
wb.open("output/comment.xlsx");
IWorksheet sheet = wb.getWorksheets().get(0);
sheet.getRange("C3").getCommentThreaded().setText("修改过的批注");
sheet.getRange("C3").getCommentThreaded().getReplies().get(0).setText("修改过的回复");
wb.save("output/editComment.xlsx");

结果如下:

删除批注

打开添加批注代码所保存的 Excel 文件,删除批注。

Workbook wb = new Workbook();
wb.open("output/comment.xlsx");
IWorksheet sheet = wb.getWorksheets().get(0);

//删除批注
sheet.getRange("C3").clearCommentsThreaded();

wb.save("output/removeComment.xlsx");

总结

以上就是在Java中实现Excel注释和批注的方法,如果您想了解更多信息,可以参考这篇帮助手册,无论是初学者还是有经验的专业人士,该帮助手册都将为您提供有价值的指导和帮助。

扩展链接:

Spring Boot框架下实现Excel服务端导入导出

项目实战:在线报价采购系统(React +SpreadJS+Echarts)

Svelte 框架结合 SpreadJS 实现纯前端类 Excel 在线报表设计


葡萄城技术团队
2.7k 声望28.6k 粉丝

葡萄城创建于1980年,是专业的软件开发技术和低代码平台提供商。以“赋能开发者”为使命,葡萄城致力于通过各类软件开发工具和服务,创新开发模式,提升开发效率,推动软件产业发展,为“数字中国”建设提速。