使用Spreadsheet Compare工具对比Excel文件差异

您所在的位置:网站首页 excel工具软件安装不正常 使用Spreadsheet Compare工具对比Excel文件差异

使用Spreadsheet Compare工具对比Excel文件差异

2024-07-14 16:43| 来源: 网络整理| 查看: 265

文章目录 前言Spreadsheet Compare命令模式找到工具编写脚本脚本内容脚本执行供给SVN调用 总结

前言

与 Spreadsheet Compare 这个工具的相遇是通过 TortoiseSVN 来牵线的,在使用 SVN 管理 Excel 表格时发现,TortoiseSVN自带的比较工具不能对比Excel文件的版本差异,这对于通过日志查找问题来说非常不方便,通过搜索发现了 Spreadsheet Compare 这款优秀的工具,特此记录一下,方便日后查找并快速配置。

Spreadsheet Compare

Spreadsheet Compare 是 Microsoft Office 自带的一款工具软件(2013版本以后),可以用来比较不同 Excel 表格的差异,既能显示数据的不同,也可以显示出表结构的不同。这是一款带界面的工具软件,布局分为左右两部分,与 Beyond Compare 这个工具界面类似,但是功能更加强大。

Beyond Compare 也可以用来对比表格差异,但是只能比较两个Excel的当前工作表,如果每个 Excel 文件中包含多个工作表时就会对比错误的情况,而 Spreadsheet Compare 在这一点上更加优秀,可以对比多个表格数据。

Spreadsheet Compare 使用起来也非常简单,可以操作的按钮很少,界面简洁, 启动软件后单击左上角的 Compare Files 按钮,选择要对比的文件即可,非常方便,数据差异、结构差异等都会用不同的颜色标记出来,还可以导出对比结果。

命令模式

这种模式对于是提供给 TortoiseSVN 使用的前提,因为 TortoiseSVN 无法像人一样一步步操作选择待比较的 Excel 表格,而是需要一个命令脚本,将要比较的参数传给 Spreadsheet Compare 工具进而完成比较工作。

找到工具

想要编写命令脚本,首先要找到这个比较的工具,我找到的路径是在 "C:\Program Files (x86)\Microsoft Office\Root\Office16\DCF\SPREADSHEETCOMPARE.EXE",相信大家的路径都差不多,在 Office 工具目录下应该就能找到了,可以在开始菜单中找到工具,然后通过属性找到可执行程序所在目录,工具的可执行文件名字叫做 SPREADSHEETCOMPARE.EXE。

编写脚本

编写脚本之前有一点需要强调一下,SPREADSHEETCOMPARE.EXE 有点奇怪,大多数软件在比较差异的时候会将两个文件作为参数使用,但是 SPREADSHEETCOMPARE.EXE 在比较之前,需要将两个待比较的文件名分成两行写入一个文件,再将这个文件作为参数传给工具使用,比如要比较 ExcelA.xlsx 和 ExcelB.xlsx 两个文件,需要将两个文件写入一个临时文件 ExcelCompare.txt 中:

ExcelA.xlsx ExcelB.xlsx

然后再把这个文件作为参数传给工具:

SPREADSHEETCOMPARE.EXE ExcelCompare.txt 脚本内容

有了上面的说明,我们就可以写出一个较为通用的版本,比如我的脚本名字是 SC.bat,内容如下:

@echo off chcp 65001 set batpath=%~dp0 echo %~1> "%batpath%ExcelCompare.txt" echo %~2>> "%batpath%ExcelCompare.txt" "C:\\Program Files (x86)\\Microsoft Office\\Root\\Office16\\DCF\\SPREADSHEETCOMPARE.EXE" "%batpath%ExcelCompare.txt" 脚本执行

直接在 cmd 命令行中输入以下命令就可以对比 ExcelA.xlsx 和 ExcelB.xlsx 两个文件了:

D:\data\bat> D:\data\bat>SC.bat ExcelA.xlsx ExcelB.xlsx 供给SVN调用

个人比较懒,不喜欢截图,在 TortoiseSVN 工具的设置中找到“差异查看器”选项,选择该选项然后点击界面上的高级设置,点击增加按钮,增加根据扩展名指定差异比较程序,填写 .xlsx 和所需命令 D:\data\bat>SC.bat %base %mine

命令中的 %base 和 %mine 参数是 TortoiseSVN 提供的,代表原始文件和自己修改的文件,这次再通过 SVN 查看表格差异就可以启动 Spreadsheet Compare 程序方便地查看两个表格的差异啦。

总结 Spreadsheet Compare 是一款强大的表格比较工具,在表格比较时比 Beyond Compare 还要优秀脚本调用 SPREADSHEETCOMPARE.EXE 程序时参数是一个包含了待比较文件名的临时文件,这一点和其他的比较工具有些不同脚本中我们生成的临时文件无需手动处理,在打开待比较文件后会自动删除 ==>> 反爬链接,请勿点击,原地爆炸,概不负责!


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3