0

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

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

我尝试使用一些 Excel 比较工具,例如来自 source forge 的 Beyond Compare、TestComplete 和 ExcelCompare 宏。但没有一个起作用。我认为这是因为该文件包含不同的表。所以我打算开发一个工具来比较excel文件。但根据我的研究,这不是一个简单的任务:)

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

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

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

任何帮助表示赞赏:)

4

1 回答 1

3

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

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

于 2013-04-24T10:16:12.107 回答