Java 冻结或解除冻结Excel中的行和列的方法

当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内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • JAVA使用POI获取Excel的列数与行数

    前言 报表输出是Java应用开发中经常涉及的内容,而一般的报表往往缺乏通用性,不方便用户进行个性化编辑.Java程序由于其跨平台特性,不能直接操纵Excel.因此,本文探讨一下POI视线Java程序进行Excel中列数和行数的读取. 方法如下 //获取指定行,索引从0开始 hssfRow=hssfSheet.getRow(1); //获取指定列,索引从0开始 hssfCell=hssfRow.getCell((short)6); //获取总行数 //int rowNum=hssfSheet.ge

  • Java导出excel时合并同一列中相同内容的行思路详解

    一.有时候导出Excel时需要按类别导出,一大类下好几个小类,小类下又有好几个小小类,就像下图: 要实现这个也不难, 思路如下:按照大类来循环,如上就是按照张江校区.徐汇校区.临港校区三个大类循环,然后再处理小类,因为本例小小类不涉及合并,所以只涉及处理小类,如果需要处理小小类,还需要在处理一下,具体实现原理同小类: 每次循环时记录下此次循环的房屋类型和上次循环的房屋类型,两者相同时,要合并的结束行++,否者,说明这个房屋类型已经循环完毕(前提是各类型都按顺序order by 了,保证相同类型相

  • Java 冻结或解除冻结Excel中的行和列的方法

    当Excel表格中有大量数据时,为了方便浏览,我们可通过冻结窗口这一功能将某几行或某几列的数据冻结起来,这样在我们滚动窗口时,这几行或几列的数据就会被固定住,而不会随着其他单元格的移动而移动.总的来说,Excel冻结窗口可细分为三类:冻结行.冻结列及同时冻结行和列.本文将通过使用Java程序来演示如何冻结或解除冻结Excel中的行和列. 使用工具:Free Spire.XLS for Java(免费版) Jar文件获取及导入: 方法1:通过官网下载获取jar包.解压后将lib文件夹下的Spire

  • php实现excel中rank函数功能的方法

    本文实例讲述了php实现excel中rank函数功能的方法.分享给大家供大家参考.具体分析如下: sql语句实现排名是像这样的如: 总分成绩为 195,180,180,161,名次分别为1,2,3,4,遇到并列的情况也是按照顺序的, 而Excel函数rank排名得到的结果是1,2,2,4,遇到并列跳过中间的3 下面的函数模拟的就是这种情况 函数如下(不知道有没有更好的实现方法): 公式为: 名次=总人数--比自己小的数的个数-这个分数重复次数+1(加上自己) 得到名次的数组再根据对应的id写入到

  • Python读取excel中的图片完美解决方法

    excel中有图片是很常见的,但是通过python读取excel中的图片没有很好的解决办法. 网上找了一种很聪明的方法,原理是这样的: 1.将待读取的excel文件后缀名改成zip,变成压缩文件. 2.再解压这个文件. 3.在解压后的文件夹中,就有excel中的图片. 4.这样读excel中的图片,就变成了读文件夹中的图片了,和普通文件一样,可以做各种处理. 解压后的压缩包如下: python脚本如下: ''' File Name: readexcelimg Author: tim Date:

  • PHP使用PHPExcel删除Excel单元格指定列的方法

    本文实例讲述了PHP使用PHPExcel删除Excel单元格指定列的方法.分享给大家供大家参考,具体如下: 需求是这样的: 有一个系统仅公司内部和外部经销商使用,在一个导出功能中公司内部员工跟外部经销商导出的列是不一样的(某些数据是不能提供给经销商的) 因为导出的数据都是一样的(某些列外数据外部没有)因此并没有单独处理,而是统一生成然后根据不同的账户再删除没有权限的列 /** * @Author: HTL * @Description: 移出单元列 * @objPHPExcel: phpexec

  • Python  处理 Pandas DataFrame 中的行和列

    目录 处理列 处理行 前言: 数据框是一种二维数据结构,即数据以表格的方式在行和列中对齐.我们可以对行/列执行基本操作,例如选择.删除.添加和重命名.在本文中,我们使用的是nba.csv文件. 处理列 为了处理列,我们对列执行基本操作,例如选择.删除.添加和重命名. 列选择:为了在 Pandas DataFrame 中选择一列,我们可以通过列名调用它们来访问这些列. # Import pandas package import pandas as pd # 定义包含员工数据的字典 data =

  • Java从服务端下载Excel模板文件的两种方法

    本文实例为大家分享了Java从服务端下载Excel模板文件的具体实现代码,供大家参考,具体内容如下 方法一 (2021年01月更新) 生成excel模板 @RequestMapping("/downloadExcel") public void downloadExcel(HttpServletResponse response, HttpServletRequest request) {         String [] excelHeader = {"姓名",

  • 在Pandas DataFrame中插入一列的方法实例

    目录 引言 示例1:插入新列作为第一列 示例2:插入新列作为中间列 示例3:插入新列作为最后一列 补充:按条件选择分组分别赋值 总结 引言 通常,您可能希望在 Pandas DataFrame 中插入一个新列.幸运的是,使用 pandas insert()函数很容易做到这一点,该函数使用以下语法: insert(loc, column, value, allow_duplicates=False) 在哪里: loc: 插入列的索引.第一列是 0. column: 赋予新列的名称. value:

  • java通过HttpServletRequest获取post请求中的body内容的方法

    在java web应用中,我们如何获取post请求body中的内容?以及需要注意的问题. 通常利用request获取参数可以直接通过req.getParameter(name)的方式获取url上面或者ajax data提交上来的参数.但是body是没有名字的,无法通过参数名字这种方式获取.这时候需要用到io流的方式来获取body中的内容. 这里先贴出一段代码: package com.lenovo.servlet; import java.io.BufferedReader; import ja

  • C#使用oledb读取excel表格内容到datatable的方法

    本文实例讲述了C#使用oledb读取excel表格内容到datatable的方法.分享给大家供大家参考.具体分析如下: 首先看一段实例代码 复制代码 代码如下: string strCon = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + excel_path + ";Extended Properties='Excel 12.0;HDR=YES;IMEX=1'"; OleDbConnection myCon

  • Windows中使用Java生成Excel文件并插入图片的方法

    生成简单的Excel文件  在现实的办公中,我们常常会有这样一个要求:要求把报表直接用excel打开.在实习中有这样一个需求.根据所选择的资源查询用户所提供附件的全部信息并生成excel供下载.但是在查询的时候我们需要来检测用户所提供的附件里面的信息是否有错误(身份证).有错误的生成错误信息excel.      Apache的POI项目,是目前比较成熟的HSSF接口,用来处理Excel对象.其实POI不仅仅只能处理excel,它还可以处理word.PowerPoint.Visio.甚至Outl

随机推荐