Когда я использую Excel 2013 webservice()
и filterxml()
, кажется, что у меня разные результаты, если я просто открываю xml в веб-браузере. в частности, я пытаюсь использовать excel для доступа к API из отдела энергетики. Адрес с ключом pubilc доступа является:Excel 2013 FILTERXML() возвращает неправильное значение?
При использовании веб-браузер для доступа к адресу выше, значение Dec-13 показан как 9931:
...
<row>
<date>201312</date>
<value>9931</value>
...
Я знаю, что это быть правильным значением.
Однако, когда я пытаюсь получить доступ к этому через новую формулу excel, я получаю странный результат ... большинство месяцев правильные, но некоторые из них ошибочны ... Dec-13, например, возвращает значение 2 933 263 , Не знаю, почему - я не могу видеть, откуда этот номер.
Я использовал WEBSERVICE()
с указанным адресом, а затем пытались использовать FILTERXML()
для создания двух бок о бок массивы, один из дат и других значений:
Для дат, где K1 является расположение WEBSERVICE()
с формулой подтвердили как массив:
=FILTERXML(K$1,"//date")
и возвращать значения:
=FILTERXML(K$1,"/eia_api/series/row/data/row/value")
I т и многие другие комбинации тоже, но я супер новичок в XPATH и, очевидно, что-то пропустил.
Может ли кто-нибудь помочь мне с функцией FILTERXML()
, которая отлично копирует в Excel (правильные!) Данные, которые я могу видеть, когда я обращаюсь к XML через веб-браузер?
Спасибо!
Спасибо! Я не хотел бы возвращать пары значений, но два предложения, которые вы дали только retun #VALUE !. Интересно, не правильно ли я рассматриваю его как массив или что-то еще? – jack
Спасибо. Я также попробовал предложение Xpath 2.0, также возвращающее #VALUE !. И да, я подтвердил как массив, но до сих пор не повезло. Забывая о превосходстве на мгновение, какой Xpath вы использовали бы, чтобы вернуть вектор всех «значений», учитывая этот xml? есть ли что-то в моем подходе (в исходном сообщении), которое неправильно указано или каким-то образом заставляет его возвращать вещи, отличные от «значения»? Благодарю. – jack
Я бы просто использовал: // data/row/value' и '// data/row/date' или с дополнительным текстом():' // data/row/value/text() 'и' // data/row/date/text() ' – user3616725