How to combine date and time with a string value in column created by Case in SQL Query
I guess because it cant have a string value with a column formatted
  for Date and time?


You are correct. CASE Returns the highest precedence type from the set of types in result_expressions and the optional else_result_expression. Data type precedence comes into play here. 

You'd have to convert your column to a varchar.

DB FIDDLE

case
   when DateTimeColumn  is null then 'No Data'
   else convert(varchar (20),DateTimeColumn,120)
end


You can reference the CAST and CONVERT documentation for other date/time formats.