使用VBA比较工作表中的两列

时间:2019-03-17 14:19:43

标签: excel vba

我在标题uncaught exception: error(existence_error(procedure,climber/1),top_level/0) Name List 1的工作表中有两列。

我想比较这两列,并用红色突出显示Name List 2中不存在但Name List 1中存在的名称,反之亦然。如果两个列中的名称相同,则将其保留为白色。

两个列表的列范围都不相同。

Name list 2

2 个答案:

答案 0 :(得分:1)

假设我有以下内容:

    A        B
1   Peter    Peter
2   James    Sarah
3   Claire   John
4   Sandra
5   John

我现在可以为每一列应用条件格式。

  1. 突出显示A1:A5
  2. 条件格式>新规则>使用公式...
  3. 公式:=ISERROR(MATCH(A1,$B$1:$B$3,0))
  4. 应用格式

  5. 突出显示B1:B3

  6. 条件格式>新规则>使用公式...
  7. 公式:=ISERROR(MATCH(B1,$A$1:$A$5,0))
  8. 应用格式

这应该突出显示您需要的名称,即出现在一个列表中,而不显示在另一个列表中。

答案 1 :(得分:0)

使用VBA,A,B列

Sub duplicates()
    Dim i As Integer
    Dim var As Variant

    For i = 2 To Cells(Rows.Count, "A").End(xlUp).Row
      var = Application.Match(Cells(i, 1).Value, Columns(2), 0)
      If Not IsError(var) Then
         Cells(i, "A").Interior.Color = 255
      End If
    Next i
End Sub