Остановка разбора даты в Excel - PullRequest
2 голосов
/ 06 октября 2010

Я написал скрипт для экспорта данных о продукте из базы данных cscart в файл CSV.Он работает отлично, однако при открытии в MS Excel он разбирает такие вещи, как «12-14», как даты, которые показывают «14 декабря».

Я читаю http://excel.tips.net/Pages/T003228_Stopping_Date_Parsing_when_Opening_a_CSV_File.html, но клиент не будетбудьте готовы сделать это - есть ли другой способ в самом файле CSV, чтобы заставить Excel распознавать его как строку.

Я попытался заключить все поля в двойные кавычки, я попытался расставить пробелыдефис - не повезло.Есть идеи?

Ответы [ 2 ]

3 голосов
/ 06 октября 2010

Рассматривали ли вы экспорт данных в формате Excel 2003 XML?Если вы не используете встроенный модуль записи CSV, создание формата XML не должно быть слишком сложным.И самое главное: вы можете точно указать тип данных.

Хороший пример можно найти в Википедии .

(Не путайте этот формат сновейший формат XML / ZIP Excel с расширением .xlsx.)

0 голосов
/ 06 октября 2010

Я попробовал это, поставив одинарную кавычку, и это сработало.Образцы данных, которые я использовал, были

ID, имя, строка, дата

1, abcd, "12-1", abc

21, zys, "'12-1 ", abc

13, pqrst," '12-21 ", abc

Однако в строке теперь отображается при открытии в XLS как' 12 -1, что не очень приятно, но простое решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...