比较两个excel文件

时间:2013-04-24 10:10:57

标签: c# excel file comparison

我正在开发一个工具来比较两个excel文件。

一个excel文件包含大约300-400行。在每个excel文件中,有4个表具有不同的列数。表格在一张纸上一个接一个地对齐。

我尝试使用来自source forge的Beyond Compare,TestComplete和ExcelCompare宏之类的excel比较工具。但没有一个确实奏效。我认为这是因为该文件包含不同的表。所以我计划开发一个比较excel文件的工具。但根据我的研究,这不是一个简单的任务:)

我的方法是一次从2个excel文件中提取2行(来自A.xlsx的第1行和来自B.xlsx的第一行),将值放入sperate 2数组中,然后比较这些值。识别不同的值并将其写回新的Excel文件。

这种方法是否有效或适用于300行的文件...... ???如果有人有不同的想法,请与我分享。

我打算使用C#和Excel 2010进行开发。

感谢任何帮助:)

1 个答案:

答案 0 :(得分:3)

我的方法是将两个工作表转换为CSV(通过将它们保存为CSV格式; Excel可以为您执行此操作),然后使用字符串距离算法来定位差异。 Files Comparer和其他内容比较工具使用此算法可以提供非常好的结果。

这种方法具有额外的好处(与线性逐个单元格比较),可以整齐地识别任何缺失的行,而不是将整个数据的其余部分标记为不同。