Perhaps then something along the lines of:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
If Target.Count > 1 Then Exit Sub
If Target.Column <> 1 Then Exit Sub
Set rng = Range(Cells(6, "A"), Cells(Rows.Count, "A").End(xlUp))
rng.Interior.ColorIndex = xlNone
Application.EnableEvents = False
With rng.Offset(0, 1)
    .ClearContents
    .FormulaR1C1 = "=IF(COUNTIF(" & rng.Address(1, 1, xlR1C1) & ",RC1)>1,""This is Text"",0)"
    On Error Resume Next
    .SpecialCells(xlCellTypeFormulas, xlTextValues).Offset(0, -1).Interior.ColorIndex = 3
    .SpecialCells(xlCellTypeFormulas, xlNumbers).Clear
    On Error GoTo 0
    .Formula = .Value
End With
ExitPoint:
Application.EnableEvents = True
Exit Sub

Handler:
Resume ExitPoint
End Sub
Note, in the above I clear values from B before checking results of COUNTIF etc... this was not in your original code but I suspect is a requirement.