我们的源代码存储库中有很多电子表格(xls)。它们通常使用dbUnit或openoffice.org进行编辑,并且主要用于填充数据库,以便使用gnumeric进行单元测试。据我所知,没有简单的方法可以对xls文件进行比较,这使得合并非常繁琐和容易出错。
我尝试过将电子表格转换为xml,并做了一个常规的比较,但我真的觉得这应该是万不得已的。
我希望像处理文本文件一样,使用git执行差异(和合并)。我如何做到这一点,例如,当发出git diff时
发布于 2012-07-01 23:45:01
在我们的公司里,我们也面临着同样的问题。我们的测试输出excel工作簿。二进制比较不是一个选项。因此,我们推出了自己的简单命令行工具。查看ExcelCompare project。事实上,这让我们可以很好地自动化我们的测试。补丁/功能请求非常受欢迎!
发布于 2008-09-22 14:14:03
在过去,我对Excel工作簿做了很多比较。我的技术非常适用于有许多工作表的工作簿,但它只比较单元格内容,而不是单元格格式、宏等。此外,还涉及一些编码,但如果您必须重复比较许多大文件,这是非常值得的。下面是它的工作原理:
A)编写一个简单的转储程序,该程序遍历所有工作表,并将所有数据保存到制表符分隔的文件中。为每个工作表创建一个文件(使用工作表名称作为文件名,例如"MyWorksheet.tsv"),并在每次运行程序时为这些文件创建一个新文件夹。以excel文件名命名文件夹,并添加时间戳,例如"20080922-065412-MyExcelFile“。我在Java语言中使用一个名为JExcelAPI的库完成了这项工作。这真的很简单。
B)在右键单击Excel文件时,添加Windows shell扩展以运行步骤A中的新Java程序。这使得运行这个程序变得非常容易。您需要谷歌如何做到这一点,但它很容易写一个*.reg文件。
C)获取BeyondCompare。它有一个非常酷的特性,可以通过在一个很好的表see screenshot中显示分隔数据来比较这些数据。
D)您现在可以轻松地比较Excel文件了。右键单击Excel文件1并运行转储程序。它将为每个工作表创建一个包含一个文件的文件夹。右键单击Excel文件2并运行转储程序。它将创建第二个文件夹,每个工作表包含一个文件。现在使用BeyondCompare (BC)来比较文件夹。每个文件代表一个工作表,因此如果工作表中存在差异,BC将显示此信息,您可以向下钻取并进行文件比较。BC将在一个漂亮的表格布局中显示比较,您可以隐藏您不感兴趣的行和列。
发布于 2014-10-17 15:07:48
你可以尝试这个免费的在线工具- www.cloudyexcel.com/compare-excel/
它提供了一个很好的在线视觉输出,在添加,删除,更改等方面。

另外,你不需要安装任何东西。
https://stackoverflow.com/questions/114698
复制相似问题