Excel XML, как я могу заставить Excel отображать мое поле DateTime в формате гггг-мм-дд? - PullRequest
5 голосов
/ 13 января 2010

Я генерирую XML-файл через C #, и соответствующая часть выглядит следующим образом

<ss:Cell>
    <ss:Data ss:Type="DateTime">2009-01-18T00:00:00.000</ss:Data>
</ss:Cell>

Однако в Excel он отображается в виде числа, например 41249, которое не похоже на исходную дату. Если я щелкну правой кнопкой мыши по ячейке и изменим формат на dd / MM / yyyy или любой другой, тогда на дисплее отобразится правильная дата. Кто-нибудь знает, как я могу установить формат в XML для отображения даты? Данные есть, они просто отображаются неправильно.

1 Ответ

17 голосов
/ 13 января 2010

В разделе <Styles> добавить

  <Style ss:ID="s22">
   <NumberFormat ss:Format="yyyy\-mm\-dd"/>
  </Style>

затем отметьте вашу ячейку стилем:

<Cell ss:StyleID="s22"><Data ss:Type="DateTime">2009-01-21T00:00:00.000</Data></Cell>

Либо откройте файл XML в Excel, внесите необходимые изменения, снова сохраните его как XML, а затем посмотрите, что изменилось.

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