当Excel表格中有大量数据时,为了方便浏览,我们可通过冻结窗口这一功能将某几行或某几列的数据冻结起来,这样在我们滚动窗口时,这几行或几列的数据就会被固定住,而不会随着其他单元格的移动而移动。总的来说,Excel冻结窗口可细分为三类:冻结行、冻结列及同时冻结行和列。本文将通过使用Java程序来演示如何冻结或解除冻结Excel中的行和列。
使用工具:Free Spire.XLS for Java(免费版)
Jar文件获取及导入:
方法1:通过官网下载获取jar包。解压后将lib文件夹下的Spire.Xls.jar文件导入Java程序。(如下图)
方法2:通过maven仓库安装导入。具体安装教程详见此网页。
【示例1】冻结行和列
Part 1 冻结首行
import com.spire.xls.ExcelVersion; import com.spire.xls.Workbook; import com.spire.xls.Worksheet; public class FreezeTopRows { public static void main(String[] args) { //创建Workbook对象 Workbook workbook = new Workbook(); //加载一个示例文档 workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.xlsx"); //获取第一个工作表 Worksheet sheet = workbook.getWorksheets().get(0); //冻结第一行 sheet.freezePanes(2,1); //保存文档 workbook.saveToFile("output/FreezeFirstRow.xlsx", ExcelVersion.Version2016); } }
结果文档:
Part 2 冻结首列
import com.spire.xls.ExcelVersion; import com.spire.xls.Workbook; import com.spire.xls.Worksheet; public class FreezeFirstColumn { public static void main(String[] args) { //创建Workbook对象 Workbook workbook = new Workbook(); //加载一个示例文档 workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.xlsx"); //获取第一个工作表 Worksheet sheet = workbook.getWorksheets().get(0); //冻结首列 sheet.freezePanes(1,2); //保存文档 workbook.saveToFile("output/FreezeFirstColumn.xlsx", ExcelVersion.Version2016); } }
结果文档:
Part 3 同时冻结行和列
import com.spire.xls.ExcelVersion; import com.spire.xls.Workbook; import com.spire.xls.Worksheet; public class FreezeSpecificRowAndColumn { public static void main(String[] args) { //创建Workbook对象 Workbook workbook = new Workbook(); //加载一个示例文档 workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\Sample.xlsx"); //获取第一个工作表 Worksheet sheet = workbook.getWorksheets().get(0); //冻结前两行两列 sheet.freezePanes(3,3); //保存文档 workbook.saveToFile("output/FreezeSpecificRowsAndColumns.xlsx", ExcelVersion.Version2016); } }
结果文档:
【示例2】解除冻结行和列
import com.spire.xls.ExcelVersion; import com.spire.xls.Workbook; import com.spire.xls.Worksheet; public class UnfreezeRowsAndColumn { public static void main(String[] args) { //创建Workbook对象 Workbook workbook = new Workbook(); //加载一个示例文档 workbook.loadFromFile("C:\\Users\\Test1\\Desktop\\FreezeSpecificRowsAndColumns.xlsx"); //获取第一个工作表 Worksheet sheet = workbook.getWorksheets().get(0); //取消冻结窗口 sheet.removePanes(); //保存文档 workbook.saveToFile("output/UnfreezePanes.xlsx", ExcelVersion.Version2016); } }
到此这篇关于Java 冻结或解除冻结Excel中的行和列的方法的文章就介绍到这了,更多相关Java 冻结或解除冻结Excel内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!
- 本文固定链接: https://zxbcw.cn/post/183194/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)