本文介绍在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仓库下载导入

Java 将Excel工作簿按工作表拆分为多个文档的更多相关文章

  1. PoiDocxDemo【Android将表单数据生成Word文档的方案之二(基于Poi4.0.0),目前只能java生成】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个是<PoiDemo[Android将表单数据生成Word文档的方案之二(基于Poi4.0.0)]>的扩展,上一篇是根 ...

  2. PoiDemo【Android将表单数据生成Word文档的方案之二(基于Poi4.0.0)】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 使用Poi实现android中根据模板文件生成Word文档的功能.这里的模板文件是doc文件.如果模板文件是docx文件的话,请阅读 ...

  3. Android根据word模板文档将表单数据生成word文档的方案整理

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 尝试的方案包括以下几种: freemarker 只能在java项目上运行,无法在Android项目上运行: 参考资料:<Fre ...

  4. [办公自动化]excel工作簿内的表无法删除,单击右键无删除键

    今天同事问,我自己的工作簿,没有设置保护,但是就是无法删除其中的工作表. 后来发现,她的excel工作簿打开的文件名后面显示[共享]. 原因找到了. 取消共享就可以了.

  5. c# 创建Excel com加载项Ribbon动态加载工作簿和工作表

    使用 VSTO 创建外接程序,Gallery控件动态加载工作簿名称 代码如下: 加载工作簿名称: private void Gallery1_ItemsLoading(object sender, R ...

  6. Excel 工作簿、工作表与单元格

    工作簿 工作簿是指在 Excel 中用来存储并处理数据的文件,其扩展名是.xlsx.工作簿是由工作表组成的,每一个工作簿都可以包含一个或多个工作表,默认为 3 个工作表.Excel 2007 之前的版 ...

  7. excel破解工作簿与工作表保护

    1.工作簿保护 1.1.使用压缩文件打开文件

  8. 用openpyxl创建工作簿和工作表

    import osimport openpyxl #设置默认路径os.chdir(r'D:/openpyxl/') #创建工作簿变量 wb = openpyxl.Workbook() #创建工作表变量 ...

  9. FreemarkerJavaDemo【Android将表单数据生成Word文档的方案之一(基于freemarker2.3.28,只能java生成)】

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 前言 这个方案只能在java中运行,无法在Android项目中运行.所以此方案是:APP将表单数据发送给后台,后台通过freemarker ...

  10. java 在MySQL中存储文件,读取文件(包括图片,word文档,excel表格,ppt,zip文件等)

    转自:https://blog.csdn.net/u014475796/article/details/49893261 在设计到数据库的开发中,难免要将图片或文档文件(如word)插入到数据库中的情 ...

随机推荐

  1. 基于SpringBoot+Netty实现即时通讯(IM)功能

    简单记录一下实现的整体框架,具体细节在实际生产中再细化就可以了. 第一步 引入netty依赖 SpringBoot的其他必要的依赖像Mybatis.Lombok这些都是老生常谈了 就不在这里放了 &l ...

  2. [数据分析与可视化] 基于Python绘制简单动图

    动画是一种高效的可视化工具,能够提升用户的吸引力和视觉体验,有助于以富有意义的方式呈现数据可视化.本文的主要介绍在Python中两种简单制作动图的方法.其中一种方法是使用matplotlib的Anim ...

  3. Unity - UIWidgets 7. Redux接入(二) 把Redux划分为不同数据模块

    参考QF.UIWidgets 参考Unity官方示例 - ConnectAppCN 前面说过,当时没想明白一个问题,在reducer中每次返回一个new State(), 会造成极大浪费,没想到用什么 ...

  4. Spring Cloud Gateway系列:路由断言工厂

    目录 1.After路由断言工厂 配置式 API式 2.Before路由断言工厂 配置式 API式 3.Between路由断言工厂 配置式 API式 4.Cookie路由断言工厂 配置式 API式 5 ...

  5. PCA主成分分析的理解

    u     |_matrix1x2_{{-0.70710678118654757};{-0.70710678118654735}} x^(1)    |_matrix1x2_{{-0.51805350 ...

  6. centOS7 防火墙基本操作

    一.防火墙的开启.关闭.禁用命令 (1)设置开机启用防火墙:systemctl enable firewalld.service (2)设置开机禁用防火墙:systemctl disable fire ...

  7. 如何使用 GTX750 或 1050 显卡安装 CUDA11+

    前言 由于兼容性问题,使得我们若想用较新版本的 PyTorch,通过 GPU 方式训练模型,也得更换较新版本得 CUDA 工具包.然而 CUDA 的版本又与电脑显卡的驱动程序版本关联,如果是低版本的显 ...

  8. 鸿蒙开发学习(一)之ArkTS

    目录 TypeScript语法 基础 module ArkTS 基本UI描述 基本概念 状态管理 页面级变量的状态管理 @State @Prop @Link 应用级变量的状态管理 开发入门 应用模型 ...

  9. AcWing 168. 生日蛋糕

    原题链接:AcWing 168. 生日蛋糕 设当前体积是\(v,h.r\)分别记录每层的高度和半径,由于整个蛋糕的上表面面积等于最大蛋糕的圆面积,所以枚举到最大一层的时候直接加上即可. 优化搜索顺序: ...

  10. 牛客多校第一场 A. Alice and Bob (暴力SG)

    题目大概 有两堆石子,有两个人拿,一个人从一堆中拿\(k\)个,那么就必须从另一堆中拿\(s*k\)个,Alice先拿,问是否必赢. 解题: 数据不大,看到前\(20\)名队伍没有推结论做的..除了打 ...