Программное форматирование даты в листе Excel с использованием Office Open Xml SDK - PullRequest
6 голосов
/ 09 февраля 2011

Я создаю электронную таблицу Excel xlsx, используя Office Open XML SDK. Я могу добавить даты к листу, преобразовав их в представление даты «AO» и установив значение ячейки в число. Однако я не могу понять, как добавить форматирование dd-mm-yy в ячейку.

Я видел много сложных примеров, когда вам нужно создавать таблицу стилей с нуля, добавлять к ней формат и затем ссылаться на этот формат, но я думаю, что должен быть более простой способ. Я создаю свой лист из шаблона, а в Excel уже есть встроенные форматы / стили. IMO Я должен иметь возможность просто загрузить таблицу стилей из файла Excel, который я использую в качестве шаблона, а затем применить формат. Не могу понять, как это сделать, хотя.

Ответы [ 2 ]

1 голос
/ 11 февраля 2011

Если вы создаете xlsx с нуля, вы не можете избежать создания таблицы стилей.Вам минимально нужны таблица стилей и элемент формата ячейки.Элемент формата ячейки может ссылаться на встроенный формат даты, в этом случае вы можете избежать нестандартного формата чисел, но если вы хотите, чтобы формат даты не был встроенным, вам также необходим элемент формата чисел.

Если вы создаете xlsx из шаблона xlsx, то вы можете ссылаться на формат ячейки, который уже определен, но он может быть очень чувствительным, так как ссылки основаны только на индексе, поэтому вам безопаснее просматривать определенные форматы ячейки, чтобынайдите тот, который соответствует желаемому формату даты, а не жестко кодируйте индекс формата ячейки.

0 голосов
/ 04 марта 2011

Попробуйте - я использовал это, когда пытался создать свои собственные числовые форматы.Это хороший пример: Расширенные стили в Excel OpenXML

Вам все равно придется создать таблицу стилей, но это очень хорошее место для начала.У него довольно много стилей, поскольку он демонстрирует, что можно сделать.Ваша таблица стилей может быть намного проще, если вы хотите использовать только один формат.

Также взгляните на список в этом посте.Ваш формат уже может быть встроен в Excel. Встроенные стили для Excel

...