美文网首页程序员
Java 冻结或解除冻结Excel中的行和列

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

作者: Tina_Tang | 来源:发表于2020-03-20 09:48 被阅读0次

    当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中的行和列

        本文链接:https://www.haomeiwen.com/subject/oumdyhtx.html