Я был бы очень признателен, если бы у кого-то была идея, как быстрее выполнить следующую задачу. У меня есть список имен в столбце A, и я хочу увидеть, появляется ли какое-либо из этих имен в столбце C. Приведенный ниже код отлично работает, когда я тестирую его с 500 именами. Но когда я использую свои полные данные, которые имеют около 3000 значений в столбце A и 150000 в столбце C, я не уверен, работает ли он правильно, потому что он был близок к двум часам и еще не завершен.
Sub compare_cols122()
Dim NameList As Worksheet
Dim i As Long, j As Long
Dim LastRow As Long
Set NameList = Excel.Worksheets("Names")
LastRow = NameList.UsedRange.Rows.Count
Application.ScreenUpdating = False
For i = 2 To LastRow
For j = 2 To LastRow
If NameList.Cells(i, 1).Value <> "" Then
If InStr(1, NameList.Cells(j, 3).Value, NameList.Cells(i, 1).Value, vbTextCompare) > 0 Then
NameList.Cells(j, 3).Interior.ColorIndex = 6
NameList.Cells(i, 1).Interior.ColorIndex = 6
Exit For
Else
End If
End If
Next j
Next i
Application.ScreenUpdating = True
End Sub