news 2026/4/23 9:15:04

如何使用 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/23 12:29:18

比 Manus 还好用?这款国产 AI,让 Python 小白也能玩转编程

AiPy 的核心理念是让大型语言模型(LLM)能像人类一样自由、主动地使用和执行完整的 Python 环境。换句话说,就是让 Python 从一个冰冷的指令集,变成了一个能理解自然语言、主动解决问题的智能伙伴。核心功能展示1、多模型调用无需逐…

作者头像 李华
网站建设 2026/4/23 12:29:03

ASTM F88:医疗包装密封强度测试关键标准

在医疗健康领域,产品包装不仅是保护屏障,更是安全防线。ASTM F88/F88M-23《柔性阻隔材料密封强度测试方法》作为国际通用标准,为医疗器械和生物医药行业提供了科学可靠的密封性能评估体系。该标准通过测量分离密封所需力量,量化评…

作者头像 李华
网站建设 2026/4/23 15:25:13

Webhook测试工具终极对决:开源自建 vs 云端托管,你该怎么选?

Webhook测试工具终极对决:开源自建 vs 云端托管,你该怎么选? 【免费下载链接】webhook.site webhooksite/webhook.site: 是一个简单的 Webhook 接收和回调服务器,它可以接收 HTTP POST 请求并将其转发到指定的回调 URL。适合用于实…

作者头像 李华
网站建设 2026/4/23 12:29:26

布利斯的安全“预”谋:以计划织就全周期防护网

安全事故,真的只能事后补救吗?布利斯定理早已给出答案:提前计划的价值,远胜事后慌乱的补救。当计划思维撞上安全生产,便解锁了从预案编制到持续改进的六大核心密码。它不是纸上谈兵的空想,而是让风险看得见…

作者头像 李华
网站建设 2026/4/23 12:29:24

重新定义音乐播放体验:MPD 音乐播放器守护进程深度解析

重新定义音乐播放体验:MPD 音乐播放器守护进程深度解析 【免费下载链接】MPD Music Player Daemon 项目地址: https://gitcode.com/gh_mirrors/mp/MPD 你是否曾经渴望拥有一个能够完美融入你技术生态的音乐播放系统?一个既能在后台稳定运行&#…

作者头像 李华