Excel 2007 не будет переформатировать веб-запрос xml, имеющий поле datetime - PullRequest
0 голосов
/ 21 апреля 2011

У меня есть веб-сервис, который возвращает XML, который выглядит следующим образом:

<ArrayOfPosition>
<Position>
<Amount>9</Amount>
<Symbol>Bob</Symbol>
<UpdateTime>2011-04-21T11:34:34.234234234-04:00</UpdateTime>
<UpdateTimeStr>2011-04-21 11:22:33</UpdateTimeStr>
</Position>
<Position>
<Amount>10</Amount>
<Symbol>Fred</Symbol>
<UpdateTime>2011-04-21T11:34:34.234234234-04:00</UpdateTime>
<UpdateTimeStr>2011-04-21 11:22:44</UpdateTimeStr>
</Position>
</ArrayOfPosition>

Он входит в Excel без проблем, но независимо от того, что я делаю, я не могу изменить форматирование в столбцах UpdateTime или UpdateTimeStr вэлектронная таблица.Кажется, Excel отказывается распознавать эти данные как поле даты и времени.

У меня было ощущение, что он не сможет выяснить, что поле было датой и временем, поэтому я добавил поле с именем UpdateTimeStr, которое имеетвремя, отформатированное так, как я ожидал, Excel поймет, но, увы, нет.Есть идеи?

1 Ответ

0 голосов
/ 22 апреля 2011

Одним из решений является использование формулы в Excel для повторного использования текстовых данных, импортируемых из XML.Например, вы можете написать формулу, например: «= D2 + 0» (D2 будет ячейкой, в которой хранится UpdateTimeStr), чтобы получить числовое представление значения UpdateTimeStr (например, 40654.47399).Затем вы можете отформатировать это числовое значение как дату любым удобным вам способом.

Вы можете сделать этот маленький трюк в отдельном столбце, чтобы вычислить все числовые представления для всего столбца UpdateTimeStr.Затем вы форматируете этот новый столбец (с номерами) и вставляете его поверх исходного столбца UpdateTimeStr.

Надеюсь, это вам поможет!

...