After a bit of consideration, to handle "edge" conditions, and future changes...

On a hidden sheet, start a list of all "special" words in column A, make all them UPPERCASE.
In column B pace some "action" notes. I only see the need for three + 1 notes: Upper, Lower, Delete, and a replacement Word for special cases like CamelCase.

Special Words
Action To Take function results
TODAY Upper Today
TOMORROW Lower tomorrow
NEXTWEEK NextWeek NextWeek
NEVER Delete

Now, to borrow a bit of p45cal's code
Set Specials = Sheets("Hidden"???).Range("A1").CurrentRegion.Value

For Each cll In Selection.Cells
  xx = Split(cll.Value)
     For i = LBound(xx) To UBound(xx)
         For j = LBound(Specials) + 1 to Ubound(specials)   '+1 = Skip The headers in Specials   
       If UCase(xx(i)) = Specials(j, 1) Then
        Select Case Specials(j, 2)
           Case "Upper"
              'Your code here to Make xx(i) ProperCase 
           Case "Lower"
                'your code here to Make xx(i) Lower Case 
           Case "Delete"
                'your code here to delete that word (plus one space)
           Case Else
                 'Your code to Make xx(i) = Specials(j, 2)
        End Select
        Exit For ' There can be only one for each xx(i)
      End If
    Next j
  Next i
Next cll