如何使用apache poi在excel中重命名名称

如何使用 Apache poi 更改名称的引用,该名称引用一组单元格?我已经查看了 API 并发现了一些函数,例如getNameName(),我不确定我是否必须使用它或我应该如何使用它。


假设我有一个名称“学生姓名”,它指的是单元格 $A$2:$A$10,我想在 Java 中更改此名称以引用单元格 $A$2:$A$20。有谁知道如何做到这一点?


编辑:我查看了文档并试图想出一个示例代码,但即使这样也不起作用。


代码:


 InputStream inp = new FileInputStream("test.xlsx");

        Workbook wb = WorkbookFactory.create(inp);

        Sheet sheet = wb.getSheetAt(0);

        Name name;

        name = wb.createName();

        name = name.getNameName("NameOFStudents");

        name.setRefersToFormula("=Sheet1!$A$1:$A$20");

        FileOutputStream fileout = new FileOutputStream("test2..xlsx");

        wb.write(fileout);

        fileout.close();


弑天下
浏览 372回答 1
1回答

鸿蒙传说

所以我终于想出了怎么做。您将工作簿变量与函数.getName()一起使用以获取所需的名称并将其分配给 Name 变量,然后用于.setRefersToFormula()更改引用代码:        InputStream inp = new FileInputStream("test.xlsx");        Workbook wb = WorkbookFactory.create(inp);        Sheet sheet = wb.getSheetAt(0);        Name name;        name = wb.getName("NameOFStudents");        name.setRefersToFormula("Sheet1!$A$1:$A$20");        FileOutputStream fileout = new FileOutputStream("test2..xlsx");        wb.write(fileout);        fileout.close();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java