So did you try my code?

You will need to adjust the colorindex values I used as they do not match yours exactly.

Also my code does not clear any existing formatting, unless the dates changing have no start or end.

If you do need existing colours on a row clearing first just copy the line

            ' clear
            Intersect(rngDates.EntireColumn, Target.Rows(1).EntireRow).Interior.ColorIndex = xlNone