I think the "oh, finally" here is somewhat overblown. It would be much more annoying to lots of people if Excel did not recognize a number as a number, or a date as a date. This convenient conversion feature could always be overridden, if I'm not mistaken, by either pre-formatting cells as text (when you're entering manually), or designating a column as text (when importing, and converting from, a CSV file).
One could criticise that instead of 1. trying to determine the type of a column in CVS, then 2. treating all values of the column as instances of that type, Excel would go through row by row and decide ad-hoc which values to auto-convert. That might have been done because people don't just store relations in CSV, but use it as a lingua franca format to move things between applications.
The designers of Excel were not idiots, and tried to build a tool usable by the average user.
One could criticise that instead of 1. trying to determine the type of a column in CVS, then 2. treating all values of the column as instances of that type, Excel would go through row by row and decide ad-hoc which values to auto-convert. That might have been done because people don't just store relations in CSV, but use it as a lingua franca format to move things between applications.
The designers of Excel were not idiots, and tried to build a tool usable by the average user.