Помогает ли вам этот код?
Sub test()
Dim LastRowSheet1 As Integer
Dim LastRowSheet2 As Integer
Dim LastRowSheet3 As Integer
LastRowSheet1 = Sheets("Results").Cells(1, 1).End(xlDown).Row
LastRowSheet2 = Sheets("VLS").Cells(1, 1).End(xlDown).Row
LastRowSheet3 = Sheets("DTMS").Cells(1, 1).End(xlDown).Row
Dim Found As Boolean
Found = False
For i = 1 To LastRowSheet1
For j = 1 To LastRowSheet2
If Sheets("Results").Cells(i, 1).Value = Sheets("VLS").Cells(j, 1).Value Then
Sheets("Results").Cells(i, 1).Interior.Color = RGB(0, 255, 0)
'''Value found in sheet VLS => GREEN'''
Found = True
Exit For
End If
Next j
For k = 1 To LastRowSheet3
If Sheets("Results").Cells(i, 1).Value = Sheets("DTMS").Cells(k, 1).Value Then
If Found = True Then
Sheets("Results").Cells(i, 1).Interior.Color = RGB(255, 0, 0)
'''Value found in sheet VLS and DTMS => RED'''
Else
Sheets("Results").Cells(i, 1).Interior.Color = RGB(0, 0, 255)
'''Value found in sheet DTMS => BLUE'''
End If
Exit For
End If
Next k
Found = False
Next i
End Sub
Он перебирает столбец «Результаты» вашего листа и проверяет все значения двух других листов: сначала с помощью VLS, затем с DTMS.
Как только то же значение обнаруживается в VLS, оно меняет цвет на ЗЕЛЕНЫЙ. Затем, если значение также находится в DTMS, оно меняет цвет на КРАСНЫЙ или, если оно только в DTMS, оно меняет его на СИНИЙ.
Если это работает, вы можете создать кнопку и затем применить к ней этот макрос.