news 2026/4/17 22:34:00

如何使用 C# 冻结 Excel 行和列

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
如何使用 C# 冻结 Excel 行和列

当你在处理大型 Excel 文件时,尤其是需要滚动浏览大量行或列时,保持关键数据的可见性可能会变得困难。冻结行和列确保重要数据(如标题)在你浏览工作表时始终可见。此功能在处理大型数据集时非常有用,可以帮助你始终查看关键数据。

在本文中,我们将展示如何使用C#来冻结 Excel 中的行和列。

冻结行和列的作用

冻结行和列可以帮助你保持电子表格中的某些部分在滚动时始终可见。常见的冻结场景包括:

  • 冻结顶部行:在向下滚动时,保持列标题可见。
  • 冻结第一列:在水平滚动时,保持行标识符可见。
  • 同时冻结顶部行和第一列:在滚动时,保持标题和标识符都可见。

前提条件

在开始之前,确保你具备以下条件:

  1. Spire.XLS for .NET:这是一个用于操作 Excel 文件的库,你可以从 E-iceblue 官网 下载。
  2. Visual Studio:用于创建 C# 项目的开发环境。

如何实现冻结行和列

第一步:设置项目

首先,在 Visual Studio 中创建一个新的 C# 项目。然后添加对Spire.XLS的引用。你可以通过 NuGet 安装它:

Install-Package Spire.XLS

第二步:初始化工作簿和工作表

在此步骤中,我们将创建一个新的 Excel 工作簿并添加一些示例数据。

// 创建新的工作簿 Workbook workbook = new Workbook(); // 访问第一个工作表 Worksheet sheet = workbook.Worksheets[0]; // 添加示例数据 sheet.Range["A1"].Text = "姓名"; sheet.Range["B1"].Text = "年龄"; sheet.Range["C1"].Text = "部门"; sheet.Range["A2"].Text = "张三"; sheet.Range["B2"].Text = "28"; sheet.Range["C2"].Text = "人力资源";

第三步:冻结行和列

现在我们已经创建了工作簿,接下来是应用冻结功能。你可以冻结顶部行、第一列或两者,但每次只能应用一种冻结操作。

选项 1:仅冻结顶部行

如果你只想冻结顶部的第一行(例如,保持列标题在向下滚动时始终可见),可以使用以下代码:

sheet.FreezePanes(2, 1); // 冻结顶部行(行 1)
选项 2:仅冻结第一列

如果你只想冻结第一列(例如,保持行标识符在水平滚动时始终可见),可以使用以下代码:

sheet.FreezePanes(1, 2); // 冻结第一列(列 A)
选项 3:同时冻结顶部行和第一列

如果你需要同时冻结顶部行和第一列,可以使用以下代码:

sheet.FreezePanes(2, 2); // 同时冻结顶部行和第一列

第四步:保存工作簿

在应用冻结操作后,将工作簿保存到一个新的文件:

// 保存工作簿,应用冻结操作后 workbook.SaveToFile("FrozenRowsColumns.xlsx", ExcelVersion.Version2013);

完整的示例代码

以下是完整的示例代码,展示如何创建一个 Excel 文件,冻结行和列,并保存最终文件:

using Spire.Xls; class Program { static void Main(string[] args) { // 创建新的工作簿 Workbook workbook = new Workbook(); // 访问第一个工作表 Worksheet sheet = workbook.Worksheets[0]; // 添加示例数据 sheet.Range["A1"].Text = "姓名"; sheet.Range["B1"].Text = "年龄"; sheet.Range["C1"].Text = "部门"; sheet.Range["A2"].Text = "张三"; sheet.Range["B2"].Text = "28"; sheet.Range["C2"].Text = "人力资源"; // 应用冻结操作(例如,冻结顶部行和第一列) sheet.FreezePanes(2, 2); // 同时冻结顶部行和第一列 // 保存应用冻结后的工作簿 workbook.SaveToFile("FrozenRowsColumns.xlsx", ExcelVersion.Version2013); } }

结论

冻结 Excel 中的行和列是处理大型数据集时一个非常有用的功能。使用 Spire.XLS 和 C# ,你可以轻松应用此功能。以下是冻结操作的总结:

  • 仅冻结顶部行sheet.FreezePanes(2, 1);
  • 仅冻结第一列sheet.FreezePanes(1, 2);
  • 同时冻结顶部行和第一列sheet.FreezePanes(2, 2);

每种方法都有助于确保关键信息始终可见,改善在使用 Excel 文件时的用户体验。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/18 10:29:28

HAMA.bundle:Plex动漫库管理的终极解决方案

还在为Plex动漫库的混乱元数据而烦恼吗?HAMA.bundle作为专为动漫爱好者打造的Plex元数据插件,通过深度整合AniDB数据库,彻底解决了动漫识别不准确、季集分类混乱、海报显示错误等核心痛点。这款强大的元数据管理工具让你的动漫收藏从此井井有…

作者头像 李华
网站建设 2026/4/18 9:56:27

你的金融App还在“猜”用户?是时候让它学会“听”和“记”了

过去十年,金融App一直在追求“千人千面”。通过分析你的点击、浏览、停留时间,试图猜出你可能需要的产品。 但结果往往是:刚查了房贷利率,接下来一周满屏都是贷款广告;偶尔点开基金页面,就被打上“高风险偏…

作者头像 李华
网站建设 2026/4/18 8:00:30

JavaScript如何实现Web文件分片上传与断点续传?

Java老哥外包救星:原生JS大文件上传全栈方案(IE9兼容20G断点续传) 兄弟,作为甘肃接外包的Java程序员,我太懂你现在的处境了——客户要20G大文件上传,还要文件夹层级保留、IE9兼容、加密传输,预…

作者头像 李华
网站建设 2026/4/18 6:25:20

LocalAI私有化部署:构建专属智能助手的终极方案

LocalAI私有化部署:构建专属智能助手的终极方案 【免费下载链接】LocalAI 项目地址: https://gitcode.com/gh_mirrors/loc/LocalAI 你是否曾因数据安全问题而犹豫使用云端AI服务?是否厌倦了按使用量付费的持续支出?LocalAI为您提供革…

作者头像 李华
网站建设 2026/4/18 8:18:46

AI工程实战手册:产品运营的智能决策指南

您是否曾经在AI项目评审会上感到茫然无措?当技术团队滔滔不绝地讨论"RAG架构"、"提示工程"和"模型微调"时,您是否只能点头微笑?别担心,您并不孤单。今天,我们将一起揭开AI工程的神秘面纱…

作者头像 李华
网站建设 2026/4/18 6:25:03

微软混合现实工具包完整使用指南:从零开始的5分钟快速入门

微软混合现实工具包完整使用指南:从零开始的5分钟快速入门 【免费下载链接】MixedRealityToolkit The MixedRealityToolkit is a collection of scripts and components intended to accelerate the development of mixed reality applications targeting Windows M…

作者头像 李华