2009-09-30 27 views
46

我有两个具有相同结构的excel文件:它们都有1列数据。一个有800个记录,另一个有805个记录,但我不确定805组中的哪个不在800组中。我可以使用Excel找到它吗?找到2个Excel工作表之间的区别?

+3

注意,如果使用VLOOKUP解决方案假定你是在你的数据的值是唯一的。例如,如果额外的5行'数据重复已经存在的值,那么它们将不会被识别。 – 2009-10-06 07:36:50

+0

正确。在这种重复值的情况下,VLOOKUP将返回第一场比赛的结果。 – NickSentowski

回答

35

vlookup是你的朋友!

将您的列(每行一个值)放在每个电子表格的A列中。 在较大的片的列B,类型

=VLOOKUP(A1,'[Book2.xlsb]SheetName'!$A:$A,1,FALSE) 

然后向下直至复制公式作为数据运行的塔中。

如果公式的结果为FALSE,则该数据不在其他工作表中。

+2

你能解释一切意味着什么吗? ! – Angelo

+0

A1就是我们正在寻找的价值 - “[Book2.xlsb] SHEETNAME” $ A:$ A是我们正在寻找它 - 1指示从“匹配”在同一行返回值搜索范围的第一列 - False用于防止“模糊”搜索并强制所有匹配都是准确的 – NickSentowski

18

它可能看起来像一个黑客,但我个人更喜欢将文本复制为文本(或导出为CSV)到Winmerge或任何其他diff工具。假设两张表包含大部分为相同的数据,Winmerge会立即显示差异。

+0

难道这比编写数据已经包含的简单公式更有效吗? – NickSentowski

+1

尼克:总有不止一种方式来破解坚果,但只要你使用你喜欢的工具,就没有正确或错误的方法去做。 – Juliet

+1

我没有说你错了......当Excel拥有已经内置的工具时,对我来说这似乎有点复杂。一旦我在外部工具中得到结果,我可能需要将它带回来到Excel与无论如何工作。 – NickSentowski

3

使用vlookup函数。

将两组数据放在同一个excel文件中的不同工作表上。然后,在接下来的805行集(我假定是Sheet 2上)的列中,输入

=if(isna(vlookup(A1, Sheet1!$A$1:$A$800, 1, false)), 0, 1) 

的列将包含0为未在另一片找到的值,以及1是值。您可以对工作表进行排序以查找所有缺失的值。

0

使用条件格式来突出显示excel中的差异。

Here's an example.

+0

这里的问题是,第一次出现差异后的每个单元格都将被突出显示。诚然,你可以修复第一次发现,找到下一个。但是在每次修复之后,你必须重新规划公式,如果你有很多不同之处,这是不可行的。 – Greg

8

COUNTIF行之有效的快速差异检查。与VLOOKUP相比,使用起来更容易记住,操作也更简单。

=COUNTIF([Book1]Sheet1!$A:$A, A1) 

会给你出1列,如果有匹配和零,如果没有匹配(与显示> 1为表本身重复的奖金)。

+0

这个过程将会起作用,并且对用户来说将会减少工作量。就计算能力而言,VLOOKUP更高效,除非您正在检查重复值。 – NickSentowski

2

可能重播为时已晚。但希望将有助于一个寻找解决方案

我所做的是,我保存了两个excel文件作为CSV文件,并没有与Windiff比较。

3

我认为你最好的选择是一个名为比较IT的免费应用程序! ....绝对卓越的实用性和死亡易于使用。 http://www.grigsoft.com/wincmp3.htm

+0

我不确定该网站是否可以继续工作?一些图像被破坏,我无法下载应用程序。 – Sun

12

LibreOffice提供了一个工作簿比较功能特性:编辑 - >比较文档

+1

此外,此功能还允许您接受或拒绝更改到文档中......所以合并是一小块蛋糕! – blad

+0

我认为这是带有详细更改视图的最佳解决方案。 –

+0

太棒了,我没有一个,但100列,这个解决方案给了详细的差异。 – AstroFloyd

2

我用Excel中进行比较。这是付费软件,但他们有15天的试用期。它将报告修改的行,添加的行和删除的行。它匹配基于工作表的名称(作为一个选项):

http://www.formulasoft.com/excel-compare.html

2

ExcelDiff在强调差异的划分(并排端)或合并(覆盖)查看导出一个HTML报告,以及行和列。

11

简单的方法:使用第三张纸来检查。

假设你想找到表3,单元格A1表1和表2

  1. 围棋之间的差异,进入 =IF(Sheet2!A1<>Sheet1!A1,"difference","")
  2. 然后选择工作表3的所有单元格 ,填写下来,填写正确。
  3. 是表1和表2之间不同 细胞现在会说“差”在表3

你可以调整公式表明了不同的实际值。

+2

这是使用我的数据集的最简单的解决方案。 – Zammbi

11

你应该试试这个免费的在线工具 - www.cloudyexcel.com/compare-excel/

做工不错的大部分时间,有时结果有点偏离。

再加上它也提供了良好的视觉输出

enter image description here

您也可以下载Excel格式的结果。 (您需要注册)

+0

似乎没有为我工作。也许我的500x30单元格数据集太大了。 – Zammbi

+2

此外,它需要你上传数据到他们的网站 - 如果你需要保持你的数据私密性,这是不可行的 – patrickmdnet

5

如果您有Microsoft Office Professional Plus 2013,则可以使用Microsoft电子表格比较运行两个工作簿之间差异的报告。

启动电子表格比较

在Windows 7中:在Windows开始菜单,在Office 2013和工具,单击表格进行比较。

在Windows 8中:在开始屏幕上,单击电子表格比较。如果您没有看到电子表格比较磁贴,请开始输入单词电子表格比较,然后选择其磁贴。

比较两个Excel工作簿:

  1. 单击主页>比较文件。
  2. a。单击比较框旁边的蓝色文件夹图标以浏览到早期版本工作簿的位置。 (除了保存在计算机上或网络上的文件,你可以输入一个网址到您的工作簿保存一个网站。)
  3. 湾单击“收件人”框旁边的绿色文件夹图标以浏览到要与早期版本进行比较的工作簿的位置,然后单击“确定”。 (TIP如果他们保存在不同的文件夹,您可以比较两个同名文件。)
  4. 在左窗格中,选择勾选或取消勾选的选项要在工作簿比较结果看选项,如公式,宏或单元格格式。或者,选择全部。

参考:

https://support.office.com/en-us/article/Basic-tasks-in-Spreadsheet-Compare-f2b20af8-a6d3-4780-8011-f15b3229f5d8

+3

虽然这个链接可能回答这个问题,但最好在这里包括答案的基本部分,并提供参考链接。如果链接页面更改,则仅链接答案可能会失效。 - [来自评论](/ review/low-quality-posts/11222643) –

+0

@ρяσѕρєяK,感谢您的提示,我使用源代码中的重要部分更新了答案 –

3

所以实际上你使用的是Excel意味着你可以使用来自微软的 SpreadSheet Compare。它可以从Office 2013中获得。是的,我知道这个问题比6年前大。但谁知道今天可能有人需要这些信息。

+1

此功能只附带Office Professional Plus 2013。 – Taelsin

0

只需一个在每列数据来比较数据透视表可以提供更多的信息。在下面的图像中,ColumnA在Sheet1中(为了图像而在Sheet2中有一个副本)和Sheet2中的ColumnC。在每张表格中添加了一个源标志(图像中的B列和D列)。该PT已与multiple consolidation rangesSheet1!$A$1:$B$15Sheet2!$C$1:$D$10)创建:

SO1500153 exaple

左手边的数字栏显示的是当前在Sheet1(包括q两次),什么在Sheet2中(同样的权利与重复 - 的cd)。 d-l是在Sheet1但不Sheet2中和wz在Sheet2中(不包括那些存在只是为图像),而不是工作表Sheet1。添加显示Show grand totals for columns和控件总数会出现。