5

我想在使用 java 中的 apache poi 将其写入 xls 文档之前重新排列正在生成的工作表。有什么办法吗?例如:工作表名称为“RF for 10”、“Blended for 10”、“RF for 30”、“Blended for 30”。

我希望按照以下工作表顺序生成 xls:“RF for 10”、“RF for 30”、“Blended for 10”、“Blended for 30”。

4

2 回答 2

14

setSheetOrder您可以使用类的方法重新排列工作簿中工作表的顺序Workbook

于 2013-05-20T16:29:11.163 回答
5

您可以在书的特定位置创建新工作表。

 * Create a new sheet in a specific position of the book, if the sheet name has
 * 32 characters or more the method createSafeSheetName get 31 characters and
 * remove unsafe characters
 * 
 * @param book      book of excel
 * @param nameSheet Sheet name
 * @param position  index of the new sheet

 * @return
 */
protected Sheet createSheet(XSSFWorkbook book, String nameSheet, Integer positionSheet) {
    Sheet sheet = book.createSheet(WorkbookUtil.createSafeSheetName(nameSheet));
    book.setSheetOrder(sheet.getSheetName(), positionSheet);
    return sheet;
}
于 2019-10-09T16:43:14.090 回答