Формат файла Excel BIFF - тип ячейки для даты - PullRequest
1 голос
/ 30 июля 2009

Я пытаюсь написать файл Excel из php, и мне нужно, чтобы некоторые ячейки имели тип даты; Есть ли у вас какие-либо идеи, какой код формата для этого типа ячеек?

Я использую код из http://pizzaseo.com/php-excel-creator-class для создания файлов Excel.

Спасибо.

Ответы [ 3 ]

2 голосов
/ 31 июля 2009

Ваш вопрос немного расплывчатый, и я мало знаю о PHP, но я поддерживаю аналогичный пакет Python ... поэтому вот попытка помочь:

Excel не различает на уровне записи BIFF числа и даты. Единственный способ, которым читатель XLS может сказать, была ли запланирована дата автором, - это проанализировать «числовой формат», который автор связал (косвенно) с рассматриваемой ячейкой.

Я предполагаю, что вы используете эту функцию Format для установки num_format того, что пакет называет «форматом» (который включает в себя не только «числовой формат», но и выравнивание, фон, границы, ...):

function setNumFormat($num_format)

$ num_format должен быть «числовым форматом» Excel (например, для суммы денег вы можете использовать «$ 0,00»). Для даты вы просто используете тот формат, который вы предпочитаете в стандартных форматах даты, которые предоставляет Excel, или вы можете использовать настраиваемый формат, например «гггг-мм-дд чч: мм: сс» (удобно при отладке).

Тогда вы делаете:

worksheet->write($row, $col, $value, $format)

Где $ формат такой, как описано выше. Для даты $ value должно быть числом дня с плавающей запятой, где 1900-03-01T00: 00: 00 представлено как число дня 61.0, и вам следует избегать более ранних дат, потому что ... [long rant пропущено], и если есть доступна опция «datemode» или «1904», убедитесь, что вы используете (по умолчанию) 0 или False или «no, спасибо».

0 голосов
/ 30 июля 2009

http://www.codeplex.com/PHPExcel может быть полным решением.

0 голосов
/ 30 июля 2009

Вот справочный документ для двоичного формата Excel от Microsoft, в котором содержится вся информация о различных типах ячеек:

Двоичный формат файла Microsoft Excel 97-2007

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