Java 添加、删除、移动、隐藏/显示Excel工作表
本文内容将介绍通过Java程序如何添加、删除、移动工作表,以及设置工作表隐藏、显示等操作。文中使用了Java Excel类库(Free Spire.XLS for Java 免费版),可通过官网下载包,解压,并将lib文件夹下的Spire.Xls.jar文件导入Java程序;或者通过maven仓库下载并导入,仓库路径配置及依赖添加可参考教程。
导入效果如下:

1. 添加、删除工作表
import com.spire.xls.*;
public class AddWorksheet {
public static void main(String[] args) {
//加载文档
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//添加一个新的工作表
Worksheet newsheet = wb.getWorksheets().add("NewSheet");
newsheet.getCellRange("E3").setText("新添加的内容");
//删除第二个工作表
Worksheet sheet1 = wb.getWorksheets().get(1);
sheet1.remove();
//保存文档
wb.saveToFile("AddAndRemoveWorksheet.xlsx");
wb.dispose();
}
}
工作表添加、删除结果:

2. 移动工作表
import com.spire.xls.*;
public class MoveWorksheet {
public static void main(String[] args) {
//加载文档
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//移动工作表作为第三张工作表
sheet.moveWorksheet(2);
//保存文档
wb.saveToFile("MoveWorksheet.xlsx",FileFormat.Version2013);
wb.dispose();
}
}
工作表移动结果:

3. 隐藏工作表
import com.spire.xls.*;
public class HideWorksheet {
public static void main(String[] args) {
//加载文档
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx");
//获取第一个工作表,隐藏(这里获取工作表,可以通过索引值或者工作表名称来获取)
Worksheet sheet = wb.getWorksheets().get(0);
Worksheet sheet1 = wb.getWorksheets().get("Sheet3");
sheet.setVisibility(WorksheetVisibility.Hidden);
sheet1.setVisibility(WorksheetVisibility.Hidden);
//保存文档
wb.saveToFile("HideWorksheet.xlsx");
wb.dispose();
}
}
工作表隐藏结果:

4. 显示(取消隐藏)工作表
import com.spire.xls.*;
public class ShowWorksheet {
public static void main(String[] args) {
//加载文档
Workbook wb = new Workbook();
wb.loadFromFile("HideWorksheet.xlsx");
//遍历所有工作表,显示所有隐藏的工作表
for (int i = 0; i < wb.getWorksheets().getCount();i++){
Worksheet sheet = wb.getWorksheets().get(i);
sheet.setVisibility(WorksheetVisibility.Visible);
}
/*//显示指定工作表
Worksheet sheet1 = wb.getWorksheets().get("Sheet1");
sheet1.setVisibility(WorksheetVisibility.Visible);*/
//保存文档
wb.saveToFile("ShowWorksheet.xlsx");
wb.dispose();
}
}
全部工作表显示结果:

指定工作表显示结果:

(本文完)
Java 添加、删除、移动、隐藏/显示Excel工作表的更多相关文章
- Android View添加删除或隐藏显示的默认动画;
代码中给控件设置Visibility ? VISIBLE : GONE ;时太生硬,用户体验不好:设置一个Android ViewGroup的默认动画很实用: 给需要添加动画的控件或布局的父布局,记住 ...
- Java 复制Excel工作表
本文归纳了关于Java如何复制Excel工作表的方法,按不同复制需求,可分为: 1. 复制工作表 1.1 在同一个工作簿内复制工作表 1.2 在不同工作簿间复制工作表 2. 复制指定单元格数据 对于复 ...
- C#7.2——编写安全高效的C#代码 c# 中模拟一个模式匹配及匹配值抽取 走进 LINQ 的世界 移除Excel工作表密码保护小工具含C#源代码 腾讯QQ会员中心g_tk32算法【C#版】
C#7.2——编写安全高效的C#代码 2018-11-07 18:59 by 沉睡的木木夕, 123 阅读, 0 评论, 收藏, 编辑 原文地址:https://docs.microsoft.com/ ...
- C#将一个excel工作表根据指定范围拆分为多个excel文件
C#将一个excel工作表根据指定范围拆分为多个excel文件 微软Excel没有提供直接的方法来拆分excel文件,因此要拆分一个excel文件最简单的方法可能就是手动剪切和粘贴了,除此之外,还有其 ...
- C# 如何合并Excel工作表
文档合并.拆分是实现文档管理的一种有效方式.在工作中,我们可能会遇到需要将多个文档合并的情况,那如何来实现呢,本文将进一步介绍.关于拆分Excel工作表,可参见这篇文章--C#如何拆分EXCEL工作表 ...
- C# 合并Excel工作表
文档合并.拆分是实现文档管理的一种有效方式.在工作中,我们可能会遇到需要将多个文档合并的情况,那如何来实现呢,本文将进一步介绍.关于拆分Excel工作表,可参见这篇文章——C#如何拆分EXCEL工作表 ...
- 移除Excel工作表密码保护小工具含C#源代码
有朋友发了个Excel.xlsx文件给我,让我帮忙看看里面是怎么做出来的.打开审阅后发现,每个Excel工作表都添加了密码保护: 看不到里面的隐藏列和公式等等,感觉很神秘.于是研究了一下Excel文件 ...
- excel工作表密码破解方法
在日常工作中,大家有时会遇到过这样的情况:使用Excel编制的报表.表格.程序等,在单元格中设置了公式.函数等,为了防止其他人修改您的设置或者防止您自己无意中修改,您可能会使用Excel的工作表保护功 ...
- VBA基础之Excel 工作表(Sheet)的操作(二)
二. Excel 工作表(Sheet)的操作1. Excel 添加工作表(Sheet) 方法名 参数 参数值 说明 Add Before 工作表名称 在指定的工作表前面插入新的工作表 After 工作 ...
随机推荐
- Docker 运行 MYSQL 数据库的总结
公司里面要求做一个小demo 学习java相关的东西 然后使用了mysql数据库 很早之前做过mysql的容器化运行. 现在想想已经忘记的差不多了 所以这里总结一下 docker化运行mysql数据 ...
- sql 循环转移备份数据
--创建表结构 select top 1 * into ATable_20190710 from ATable --转移表数据 insert into ATable_20190710 select t ...
- 小菜鸟之HTML常用
html的基本结构是什么? 表示段落标签是什么?<p> 表示标题标签的是什么?<title>Css标签样式</title> 表示区域标签的是什么?<div&g ...
- Codeforces Educational Codeforces Round 3 E. Minimum spanning tree for each edge 树上倍增
E. Minimum spanning tree for each edge 题目连接: http://www.codeforces.com/contest/609/problem/E Descrip ...
- 【原创】大数据基础之Kudu(6)kudu tserver内存占用统计分析
kudu tserver占用内存过高后会拒绝部分写请求,日志如下: 19/06/01 13:34:12 INFO AsyncKuduClient: Invalidating location 34b1 ...
- js循环遍历性能
定length for循环 (有length) 不定length for循环(使用数组length) 不定length for循环(判断数组length是否存在) forEach(Array自带,对某 ...
- TCP/IP协议栈各个层次及分别的功能
网络接口层:这是协议栈的最低层,对应OSI的物理层和数据链路层,主要完成数据帧的实际发送和接收.网络层:处理分组在网络中的活动,例如路由选择和转发等,这一层主要包括IP协议.ARP.ICMP协议等.传 ...
- Laravel 查询数据按照时间分组
首先取消严格模式: // config/database.php // 'strict' => true, // 严谨模式注释掉 查询构造器代码: //查询构造器部分代码 })->with ...
- MyBatis-plus 新增实例,主键ID从很大的数字开始
mybatis-plus是mybatis增强版,用mybatis-plus可以省去很多DAO层代码和数据库操作语句的编写.但是需要我们配置好条件. 情景: 向数据库新增一条实例,我们要调用 inser ...
- maven 父子工程打包 并且上传linux服务器
先对父工程进行 mvn clean 再对子工程执行 install wagon:upload-single wagon:sshexec 使用wagon前提: 本地maven 的settings.xml ...