2016-09-26 140 views
0

我有2個具有唯一標識符的數據選項卡。標識符沒有任何特定的順序。我需要我的查找/索引/匹配,以顯示標籤2中不存在的所有標識符。Excel - 按順序查找不匹配的數據

原因:我工作的地方,他們使用的系統無法傳輸數據。我必須查看哪些數據與系統當前的數據進行了比較。任何數據丟失,我將需要添加到新系統。

示例;

Tab1 Column A: 
123456, 
654321, 
789456, 
456789. 

Tab2 Column B: 
654321, 
123456, 
456789. 

在標籤3,我希望Excel告訴我,789456不存在於表2 正如你可以在上面的例子中看到的,唯一的標識符可以按任意順序排列,因此,我不能把兩者列並排,並要求做2之間的匹配 - 我需要它來查看整個列。

我見過假設A列在B列

的順序相匹配的所有教程我有70000行去。

任何幫助,將不勝感激。

在此先感謝。

回答

0

要使用公式完成此操作,您需要在第一個選項卡中使用助手列。

在空柱中,我使用柱B,把下面的第二行中:

=IF(ISERROR(VLOOKUP(A2,Sheet2!B:B,1,FALSE)),MAX($B$1:B1)+1,"") 

這將創建在片材2未發現的那些遞增數字列。

enter image description here

在這一點上,你可以在新列只過濾了任何非空白,讓你列表。

如果你想在第三個選項卡一個公式來做到這一點,然後用這個公式是指第一個選項卡上的輔助柱:

=IFERROR(INDEX(Sheet1!A:A,MATCH(ROW(1:1),Sheet1!B:B,0)),"") 

然後複製/向下拖動足以獲得空白。

enter image description here

7萬級的項目我會避免數組公式,因爲它會減慢計算下來,甚至可能會崩潰Excel中。

0

你可以嘗試使用這樣的事情:

=IFERROR(VLOOKUP(<value cell>, 'Tab2'!B:B, 1, FALSE), FALSE)<>FALSE 

複製所有從標籤1列中的值代入卡口3 A列在標籤3列B,粘貼上述公式中的每一行中哪裏有A列中的值,使用引用A列中的單元格和與值單元格相同的行。該公式將嘗試從標籤1的標籤2中查找值。如果缺失,它將生成一個由IFERROR函數捕獲的錯誤,該錯誤將返回FALSE而不是讓錯誤轉義。最後,如果該值存在於選項卡2中,則FALSE將被拒絕返回TRUE;如果選項卡2中缺少該值,則返回FALSE。

從這一點可以用一個柱過濾器選項卡3只看到具有TRUE值的那些行,即將只顯示你存在於兩個選項卡1和標籤2.

0

Soulution此值是COUNTIF()式將是:

=COUNTIF(Sheet1!A:A,Sheet2!A1) 

施加,對於所有行之後,只篩選那些具有值0。

0

這個宏將在Sheet3產生緊湊列表:

Sub WhatsMissing() 
    Dim s1 As Worksheet, s2 As Worksheet, s3 As Worksheet 
    Dim r1 As Range, N As Long, K As Long, i As Long 
    Dim v As Variant 

    Set s1 = Sheets("Sheet1") 
    Set s2 = Sheets("Sheet2") 
    Set s3 = Sheets("Sheet3") 
    Set r2 = s2.Range("B:B") 

    K = 1 
    N = s1.Cells(Rows.Count, "A").End(xlUp).Row 
    With Application.WorksheetFunction 
     For i = 1 To N 
      v = s1.Cells(i, "A").Value 
      If .CountIf(r2, v) = 0 Then 
       s3.Cells(K, "A").Value = v 
       K = K + 1 
      End If 
     Next i 
    End With 
End Sub