Java 将Excel工作簿按工作表拆分为多个文档

时间:2024-04-15 12:13:09

本文介绍在Java代码环境中如何将Excel工作簿按工作表拆分为多个Excel文档,即:把Excel工作簿中的每一个工作表单独保存为一个Excel工作簿文件。

思路及方法:通过将源文档中的每个工作表通过复制的方式,保存到新的工作簿。

程序环境

测试文档如图,包含三个工作表:

 

代码示例

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仓库下载导入