I found a work around that seems to work any one see any issue with this .
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LastRow As Long
Dim WorkRng As Range
Dim Rng As Range
LastRow = Range("A" & Rows.Count).End(xlUp).Row
' Set the intersect ranges to look for changes
Set WorkRng = Intersect(Application.ActiveSheet.Range("M7:M" & LastRow & ", O7:O" & LastRow & ", Q7:Q" & LastRow & ", S7:S" & LastRow), Target)
If Not WorkRng Is Nothing Then ' Is the intersects not empty
Application.EnableEvents = False
For Each Rng In WorkRng
If VBA.IsEmpty(Rng.Value) Then ' Check if cell has stuff in it if not use last date
Range("K" & Target.Row).Formula = "=IFERROR(IF(ISBLANK(INDEX(otadd($K$7:$K$" & LastRow & "),MATCH(B" & Target.Row & ",otadd($B$7:$B$" & LastRow & "),0)))," & Chr(34) & "Not Polled" & Chr(34) & ",INDEX(otadd($K$7:$K$" & LastRow & "),MATCH(B" & Target.Row & ",otadd($B$7:$B$" & LastRow & "),0)))," & Chr(34) & "Not Polled" & Chr(34) & ")"
Else 'Update date and time
If Range("L" & Target.Row).Value >= "1" Or Range("N" & Target.Row).Value >= "1" Or Range("P" & Target.Row).Value >= "1" Or Range("R" & Target.Row).Value >= "1" Then
Range("K" & Target.Row).Value = Now
Else ' set date and time for last update
Range("K" & Target.Row).Formula = "=IFERROR(IF(ISBLANK(INDEX(otadd($K$7:$K$" & LastRow & "),MATCH(B" & Target.Row & ",otadd($B$7:$B$" & LastRow & "),0)))," & Chr(34) & "Not Polled" & Chr(34) & ",INDEX(otadd($K$7:$K$" & LastRow & "),MATCH(B" & Target.Row & ",otadd($B$7:$B$" & LastRow & "),0)))," & Chr(34) & "Not Polled" & Chr(34) & ")"
End If
End If
Next
Application.EnableEvents = True
End If
End Sub
Bookmarks