Sub telefon()
' Исходные данные --------------------------------------------------------------------------
ListBlack = "Черные" ' Наименование черного листа
ListWhite = "Белые" ' Наименование белого листа
ListAll = "Все" ' Исследуемый лист Все телефоны
RangeBlack = "A1:A12" ' Диапазон клеток со справочником черных телефонов
RangeWhite = "A1:A3" ' Диапазон клеток со справочником белых телефонов
RangeAll = "C4:C194" ' Диапазон клеток со всеми телефонами
'-------------------------------------------------------------------------------------------
Dim MWhite As Variant, MBlack As Variant
MWhite = Sheets(ListWhite).Range(RangeWhite)
MBlack = Sheets(ListBlack).Range(RangeBlack)
NBlack = UBound(MBlack, 1)
NWhite = UBound(MWhite, 1)
Sheets(ListAll).Select
Range(RangeAll).Font.ColorIndex = 0
Range(RangeAll).Interior.ColorIndex = xlNone
For Each TelNum In Range(RangeAll)
xx = TelNum.Value
x = CStr(xx)
For i = 1 To NWhite
y = CStr(MWhite(i, 1))
If Mid(x, 1, Len(y)) = y Then
TelNum.Interior.ColorIndex = 35 ' Зелёный
Exit For
End If
Next
For i = 1 To NBlack
If xx = MBlack(i, 1) Then
TelNum.Interior.ColorIndex = 3 ' Красный
Exit For
End If
Next
Next
End Sub
Sub telefon()
' Исходные данные --------------------------------------------------------------------------
ListBlack = "Черные" ' Наименование черного листа
ListWhite = "Белые" ' Наименование белого листа
ListAll = "Все" ' Исследуемый лист Все телефоны
RangeBlack = "A1:A12" ' Диапазон клеток со справочником черных телефонов
RangeWhite = "A1:A3" ' Диапазон клеток со справочником белых телефонов
RangeAll = "C4:C194" ' Диапазон клеток со всеми телефонами
NStatus = 3 ' Через сколько столбцов с телефонами напишем статус телефона
'-------------------------------------------------------------------------------------------
Dim MWhite As Variant, MBlack As Variant
MWhite = Sheets(ListWhite).Range(RangeWhite)
MBlack = Sheets(ListBlack).Range(RangeBlack)
NBlack = UBound(MBlack, 1)
NWhite = UBound(MWhite, 1)
Sheets(ListAll).Select
Range(RangeAll).Font.ColorIndex = 0
Range(RangeAll).Interior.ColorIndex = xlNone
For Each TelNum In Range(RangeAll)
xx = TelNum.Value
x = CStr(xx)
TelNum.Offset(0, NStatus).Value = "Неизвестный"
For i = 1 To NWhite
y = CStr(MWhite(i, 1))
If Mid(x, 1, Len(y)) = y Then
TelNum.Interior.ColorIndex = 35
TelNum.Offset(0, NStatus).Value = "Белый"
Exit For
End If
Next
For i = 1 To NBlack
If xx = MBlack(i, 1) Then
TelNum.Interior.ColorIndex = 3
TelNum.Offset(0, NStatus).Value = "Черный"
Exit For
End If
Next
Next
End Sub
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.