C#中利用Spire.XLS批量接受或拒绝Excel修订记录
在处理团队协作编辑后的Excel文件时,常遇到包含大量修订记录的共享工作簿。本文介绍了如何使用C#结合Spire.XLS库,自动检测并批量接受或拒绝这些修订记录,从而快速清理文件内容,便于后续归档或使用。
环境准备
要在C#项目中实现对Excel修订的管理,首先需要引入第三方组件库 Spire.XLS for .NET。您可以通过以下两种方式之一完成安装:
- 手动引用DLL: 下载免费版并解压,在 Visual Studio 的“解决方案资源管理器”中右键点击项目,选择“添加引用”,指向解压目录 BIN 文件夹下的
Spire.Xls.dll文件。 - NuGet包管理: 在 Visual Studio 中打开 NuGet 包管理器,搜索
FreeSpire.XLS进行安装;或者直接在程序包管理器控制台中运行以下命令:Install-Package FreeSpire.XLS -Version 12.7
接受Excel中的所有修订
当您需要确认所有审阅者的修改并将其固定到最终版本时,可以使用此流程。这相当于在Excel手动操作中点击“接受所有更改”。
第1步:加载包含修订的工作簿
创建一个 Workbook 对象,并使用 LoadFromFile 方法读取待处理的Excel文件(如.xlsx)。确保该文件是由“共享工作簿”模式编辑且开启了修订跟踪功能。
第2步:检查修订状态
为了优化性能,建议先调用 HasTrackedChanges 属性。如果值为 true,说明文件中存在未处理的修订记录。
第3步:执行接受操作并保存
确认有修订后,调用 AcceptAllTrackedChanges() 方法。该方法会将所有新增、删除和格式变更应用于单元格,移除修订标记。最后使用 SaveToFile 保存结果文件。
C# 实现代码
using Spire.Xls;
namespace AcceptTrackedChanges
{
class Program
{
static void Main(string[] args)
{
// 1. 创建 Workbook 实例
Workbook workbook = new Workbook();
// 2. 加载源文件
workbook.LoadFromFile("共享文档_已开启修订.xlsx");
// 3. 判断是否含有修订记录
if (workbook.HasTrackedChanges)
{
// 4. 接受所有跟踪到的修订
workbook.AcceptAllTrackedChanges();
}
// 5. 保存为新文件,此时不再包含修订数据
workbook.SaveToFile("最终定稿版.xlsx", FileFormat.Version2013);
}
}
}
拒绝Excel中的所有修订
如果您需要恢复到共享编辑前的初始状态,或者认为某些协作修改不符合要求,可以使用拒绝修订的功能。这将丢弃所有跟踪到的更改,保留原始数据。
第1步:初始化与加载
同上,实例化 Workbook 并加载目标Excel文件。
第2步:判断并执行拒绝
再次检查 HasTrackedChanges。若存在修订,调用 RejectAllTrackedChanges()。此操作会回滚所有单元格内容至修订开启前的值,并清除修订痕迹。
第3步:保存文件
将处理后的文档另存为新的Excel文件。
C# 实现代码
using Spire.Xls;
namespace RejectTrackedChanges
{
class Program
{
static void Main(string[] args)
{
// 1. 创建 Workbook 实例
Workbook workbook = new Workbook();
// 2. 加载源文件
workbook.LoadFromFile("共享文档_已开启修订.xlsx");
// 3. 判断是否含有修订记录
if (workbook.HasTrackedChanges)
{
// 4. 拒绝所有跟踪到的修订
workbook.RejectAllTrackedChanges();
}
// 5. 保存为恢复原始状态的文件
workbook.SaveToFile("还原为原版.xlsx", FileFormat.Version2013);
}
}
}
关键注意事项
- 文件类型支持: 推荐使用
.xlsx或.xls格式,这两种格式均支持共享工作簿修订功能。 - 备份习惯: 批量接受或拒绝是破坏性操作,一旦保存无法撤销。建议在脚本运行前对源文件进行复制备份。
- 兼容性: 上述代码基于 Spire.XLS 的标准 API,适用于大多数 .NET Framework 及 .NET Core/Standard 环境。
以上就是如何利用 C# 和 Spire.XLS 高效处理 Excel 修订功能的详细内容,更多关于 C# Excel 自动化处理的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













