2013-09-23 28 views
0

所以我有兩個excel文件。比較兩個excel文件之間的列?

文件1:

A  B  C 
M1 -BLANK- New 
C3 -BLANK- Old 
F35 -BLANK- Old 

文件2:

A  B  C 
M1 -BLANK- XX 
C2 -BLANK- XX 
F35 -BLANK- XX 

我想比較列A的兩個文件,發現在這種情況下,任何相應的值(M1和F35),跳過任何不匹配的值(C3/C2)和從文件1寫入從列C中的值,以文件的B列2.

結果:

M1 -New- XX 
C2 -BLANK- XX (Unchanged) 
F35 -Old- XX 

我能做到這一點嗎?

備受讚賞。

+0

如果文件1中還有一個'C2',該怎麼辦?文件1列C中C2的相應值是否應寫入C2旁邊的文件2? – Jerry

+0

只要文件1中列A的任何值對應於文件2,文件1列C中的值應移至文件2列B.所以,是的。對不起,我沒有澄清,但謝謝! – FrostLeopard

回答

3

您可以使用VLOOKUP。假設在文件1的SHEETNAME被稱爲Sheet1

=IFERROR(VLOOKUP(A2, 'Sheet1'!A:C, 3, 0), "") 

注意:如果他們在不同的工作簿,您可能需要把文件1的路徑表名稱,如前如果路徑C:\Workbook.xlsx,您將使用:

=IFERROR(VLOOKUP(A2, 'C:\[Workbook.xlsx]Sheet1'!A:C, 3, 0), "") 

VLOOKUP採用A2的值在文件2,看起來它在文件2的A列,並返回本場比賽的第三列的值。如果未找到匹配項,它將返回#N/A,並且IFERROR將任何潛在的#N/A變爲空白。

+0

嗨傑裏,我在VLOOKUP命令 的最後一部分有點模糊 「'A:C,3,0), 」「)」 究竟是什麼3,0指定?行號?也注意到沒有一個B讓我覺得有點奇怪,因爲我會把C值轉換成B.Graci。 – FrostLeopard

+0

答:C是查找表(查找表有一個索引列(第一列,A)和其他列,我可以使用A:D,A:F等等,它仍然有效)。 '3'表示從中返回所需值的第n列。所以,在這裏,因爲這是3,它將返回列C的值(第三列,A是第一列)。 'VLOOKUP(A2,'Sheet1'!A:C,2,0)'將返回所有空格,因爲A的第2列(B列)爲空。 ''VLOOKUP(A2,'Sheet1'!A:C,4,0)'將返回一個錯誤,因爲查找列的寬度是3列,並且您要求第4列 – Jerry

+0

@FrostLeopard您將該公式放在單元格B2中順便說一下文件2,並將其複製下來。 – Jerry