
Podsumowanie
Funkcja Excel WEBSERVICE zwraca dane z usługi internetowej. Funkcja WEBSERVICE jest dostępna tylko w programie Excel 2013 i nowszych wersjach dla systemu Windows.
Cel, powód
Pobierz dane z usługi internetowejWartość zwracana
Dane wynikoweSkładnia
= WEBSERVICE (adres URL)Argumenty
- url - adres URL usługi internetowej, z którą należy się połączyć.
Wersja
Excel 2013Uwagi dotyczące użytkowania
Funkcja WEBSERVICE zwraca dane z usługi WWW hostowanej w Internecie. Funkcja WEBSERVICE jest dostępna tylko w programie Excel 2013 i nowszych wersjach dla systemu Windows.
Usługa internetowa używa protokołu takiego jak HTTP do pobierania danych w formacie do odczytu maszynowego, takim jak XML lub JSON. Na przykład formuła używająca WEBSERVICE do wywołania fikcyjnej usługi internetowej hostowanej pod adresem somewebservice.com może wyglądać mniej więcej tak:
=WEBSERVICE(“http://somewebservice.com/endpoint?query=xxxx”)
Wynik funkcji WEBSERVICE jest zwracany bezpośrednio do arkusza. W przypadkach, gdy wynik z usługi sieciowej jest w formacie XML, możesz użyć funkcji FILTERXML do przeanalizowania XML.
Przykład
Prostym przykładem usługi sieciowej jest RSS, który służy do syndykowania treści w formacie XML. RSS jest powszechnie dostępny i nie wymaga uwierzytelniania, więc jest to łatwy sposób na przetestowanie funkcji WEBSERVICE. W powyższym przykładzie WEBSERVICE służy do pobierania najświeższych wiadomości z NASA. Wzór w B4 to:
=WEBSERVICE("https://www.nasa.gov/rss/dyn/breaking_news.rss")
RSS używa XML, więc wynikiem jest długi ciąg XML, który zawiera tytuły ostatnich 10 artykułów z wiadomościami opublikowanymi przez NASA, wraz z metainformacjami, takimi jak opis, data, adres URL i tak dalej. Poniższy ekran przedstawia te dane w edytorze tekstu:
Analiza wyniku
Jeśli wynikiem WEBSERVICE jest XML, możesz użyć funkcji FILTERXML do przeanalizowania danych. W przedstawionym przykładzie w ten sposób wyodrębniane są dane i tytuł każdego artykułu. Formuła w B7 wyodrębnia datę i przycina dodatkowe znaki za pomocą funkcji MID, aby utworzyć datę przyjazną dla programu Excel:
=MID(FILTERXML(B4,"//item/pubDate"),6,11)
Formuła w C7 wyodrębnia tytuł:
=FILTERXML(B4,"//item/title")
Uwagi
- Gdy WEBSERVICE nie może pobrać danych, zwraca #ARG! błąd.
- Jeśli wynik WEBSERVICE zawiera więcej niż 32767 znaków, zwraca #ARG! błąd.