Сравнение двух столбцов на листе с использованием VBA - PullRequest
1 голос
/ 17 марта 2019

У меня есть две колонки на листе с заголовками Name List 1 и Name List 2.

Я хочу сравнить эти два столбца и выделить красным цветом, имя которого отсутствует в Name List 1, но присутствует в Name list 2 и наоборот. Если имена встречаются в обоих столбцах, оставьте его белым.

Диапазон столбцов обоих списков не совпадает.

Sub indicators()
    lastrowlist1 = Range("C1000000").End(xlUp).Row
    lastrowlist2 = Range("K1000000").End(xlUp).Row

    For i = 5 To lastrowlist1
        Range("C" & i).Value = findval
        For j = 5 To lastrowlist2
            If Range("K" & j).Value <> Range("C" & i).Value Then
                Range("K" & j).Interior.ColorIndex = 4
                Range("C" & i).Interior.ColorIndex = 4
            Else
                Range("K" & j).Interior.ColorIndex = 2
                Range("C" & i).Interior.ColorIndex = 2
            End If
        Next j
    Next i

End Sub

Ответы [ 2 ]

1 голос
/ 17 марта 2019

Предположим, у меня есть следующее:

    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. Применить формат

Это должно выделитьимена, которые вам нужны, т.е. появляются в одном списке, а не в другом.

0 голосов
/ 17 марта 2019

С 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...