
Резюме
Функція WEBSERVICE Excel повертає дані веб-служби. Функція WEBSERVICE доступна лише в Excel 2013 та пізніших версіях для Windows.
Призначення
Отримуйте дані від веб-службиПовернене значення
Отримані даніСинтаксис
= WEBSERVICE (url)Аргументи
- url - URL веб-служби для дзвінка.
Версія
Excel 2013Примітки щодо використання
Функція WEBSERVICE повертає дані веб-служби, розміщеної в Інтернеті. Функція WEBSERVICE доступна лише в Excel 2013 та пізніших версіях для Windows.
Веб-служба використовує протокол, такий як HTTP, для отримання даних у машиночитаному форматі, такому як XML або JSON. Наприклад, формула, яка використовує WEBSERVICE для виклику фіктивної веб-служби, розміщеної на веб-сайті somewebservice.com, може виглядати приблизно так:
=WEBSERVICE(“http://somewebservice.com/endpoint?query=xxxx”)
Результат від функції WEBSERVICE повертається безпосередньо на аркуш. У випадках, коли результат веб-служби подано у форматі XML, ви можете використовувати функцію FILTERXML для синтаксичного аналізу XML.
Приклад
Простим прикладом веб-служби є RSS, який використовується для синдикації вмісту у форматі XML. RSS широко доступний і не вимагає автентифікації, тому це простий спосіб перевірити функцію WEBSERVICE. У наведеному вище прикладі WEBSERVICE використовується для отримання найсвіжіших новин від NASA. Формула в B4 така:
=WEBSERVICE("https://www.nasa.gov/rss/dyn/breaking_news.rss")
RSS використовує XML, тож результатом є довгий рядок XML, який містить заголовки останніх 10 статей новин, опублікованих НАСА, разом із такою інформацією, як опис, дата, URL-адреса тощо. На наступному екрані ці дані відображаються в текстовому редакторі:
Розбір результату
Коли результатом WEBSERVICE є XML, ви можете використовувати функцію FILTERXML для синтаксичного аналізу даних. У наведеному прикладі таким чином витягуються дані та заголовок кожної статті. Формула в B7 витягує дату і обрізає зайві символи за допомогою функції MID для створення дати, зручної для Excel:
=MID(FILTERXML(B4,"//item/pubDate"),6,11)
Формула в C7 виділяє заголовок:
=FILTERXML(B4,"//item/title")
Примітки
- Коли WEBSERVICE не може отримати дані, він повертає #VALUE! помилка.
- Якщо результат від WEBSERVICE перевищує 32767 символів, він повертає #VALUE! помилка.