Мне необходим макрос, который находит повторяющийся текст при его вводе и выводит окно предупреждения
Watcher_1
Держите код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myF As Range
If Target.Column = 2 And Target.Value <> "" Then
Set myF = Columns(2).Find(Target.Value)
If Not myF Is Nothing Then
If myF.Row <> Target.Row Then
MsgBox "Есть совпадение" & vbCrLf & myF.Offset(, -1).Value & " " & myF.Value & " " & myF.Offset(, 3).Value
End If
End If
End If
End Sub
А если допустим не вписываешь, а вставляешь несколько скопированных имен в столбик «ФИО» и среди них находятся повторяющиеся имена, то как быть?
slan
Private Sub Worksheet_Change(ByVal Target As Range)
Dim myF As Range, x As Range, s$
If Target.Column = 2 Then
For Each x In Target.Columns(1).Cells
Set myF = Columns(2).Find(x.Value)
If Not myF Is Nothing Then
If myF.Row <> x.Row Then
s = s & myF.Offset(, -1).Value & " " & myF.Value & " " & myF.Offset(, 3).Value & vbCrLf
End If
End If
Next x
End If
If s <> "" Then MsgBox "Есть совпадение" & vbCrLf & s
End Sub