[]
        
(Showing Draft Content)

修改工作表的位置

本文则展示如何使用GcExcel及Apache POI,在相同的工作簿中移动工作表。


GcExcel

GcExcel提供了丰富的API,可以调整工作表的位置。

//创建工作簿
Workbook workbook = new Workbook();
//打开AgingReport.xlsx文件
workbook.open("xlsx/AgingReport.xlsx");

//复制当前工作表,位置在最后
workbook.getActiveSheet().move();
//复制当前工作表,并插入在第一个工作表之前
workbook.getActiveSheet().moveBefore(workbook.getWorksheets().get(0));
//复制当前工作表,并插入在第一个工作表之后
workbook.getActiveSheet().moveAfter(workbook.getWorksheets().get(0));

//把所有的工作表复制在工作簿的最后面
workbook.getWorksheets().move();
//把所有的工作表复制,并插入在第一个工作表之前
workbook.getWorksheets().get(new String[]{"sheet1","sheet2"}).moveBefore(workbook.getWorksheets().get(0));
//把所有的工作表复制,并插入在第一个工作表之后
workbook.getWorksheets().get(new String[]{"sheet1","sheet2"}).moveAfter(workbook.getWorksheets().get(0));

// 保存文件
workbook.save("CopyWorksheet.xlsx");

POI

Workbook wb = new HSSFWorkbook();
wb.createSheet("new sheet");
wb.createSheet("second sheet");
wb.createSheet("third sheet");
wb.setSheetOrder("second sheet", 0);
wb.setSheetOrder("new sheet", 1);
wb.setSheetOrder("third sheet", 2);
FileOutputStream fileOut = new FileOutputStream(dataDir + "Apache_Reordered.xls");
wb.write(fileOut);
fileOut.close();