Spreadsheets can vary on how they handle CSV importing. If you want to know more about the CSV format Wikipedia has a pretty good explanation.
http://en.wikipedia.org/wiki/Comma-separated_valuesWhat you may have to do to make it happy is to turn on the "Strip CRLF" option (checkmark). Usually it's the Carriage Return/Line Feeds that cause the columns to go out-of-whack. For example Excel does not generally like them, however Numbers seems to be fine. It may be possible to tell Excel explicitly that a certain column is text and it may handle it better, by using it's import wizard.