本文介绍在Java代码环境中如何将Excel工作簿按工作表拆分为多个Excel文档,即:把Excel工作簿中的每一个工作表单独保存为一个Excel工作簿文件。
思路及方法:通过将源文档中的每个工作表通过复制的方式,保存到新的工作簿。
程序环境
- IDEA
- JDK1.8.0
- Spire.Xls.jar(免费版)
测试文档如图,包含三个工作表:
代码示例
import com.spire.xls.*; public class SplitFile { public static void main(String[] args) { //加载Excel文档 Workbook wb = new Workbook(); wb.loadFromFile("test.xlsx"); //遍历所有工作表 for (int i = 0; i < wb.getWorksheets().getCount(); i++) { //创建一个新的Excel工作簿,并删除默认生成的空白工作表 Workbook newWb = new Workbook(); newWb.getWorksheets().clear(); //将源文档中的工作表复制到新的Workbbok newWb.getWorksheets().addCopy(wb.getWorksheets().get(i)); //获取源文档中的工作表名 String sheetName = wb.getWorksheets().get(i).getName(); //保存新的Excel工作簿 newWb.saveToFile( sheetName + ".xlsx", FileFormat.Version2013); } } }
文档拆分结果:
注:编辑代码调用接口及方法操作Excel文档时,注意先导入Spire.Xls.jar到Java程序。
1. 手动下载导入jar到Java程序;
2. 通过Maven仓库下载导入。