Вызов веб-службы с использованием кода VBA в Excel 2010 - PullRequest
17 голосов
/ 19 августа 2010

Я пытаюсь написать некоторый код VBA в Excel 2010, который будет использовать веб-сервис. Я не могу найти какие-либо связанные ресурсы в Интернете. Может кто-нибудь, пожалуйста, скажите мне, как это сделать.

Ответы [ 5 ]

34 голосов
/ 04 апреля 2013

Я боролся с тем же вопросом о моем недавнем проекте, где я хотел поговорить с Trello и Salesforce в чистом VBA без установки каких-либо плагинов, открытия Visual Studio или других хаков.Закончил писать свою собственную библиотеку (в значительной степени основанную на одном из моих любимых, RestSharp).

Предупреждение, бесстыдный плагин: https://github.com/VBA-tools/VBA-Web

Некоторые забавные функции включают поддержку Mac (!), Аутентификацию (Http Basic, OAuth1, OAuth2 и другие), поддержку Async и анализ JSON (благодаря VBA-JSON )

Он отлично работает в Excel 2010 и 2013 (и, скорее всего, в 2007 году), и у меня есть работа с Salesforce, Trello, Basecamp, Google Maps ион должен работать практически с любым веб-сервисом.

8 голосов
/ 12 апреля 2011

Я не думаю, что сообщение, помеченное как правильный ответ, связано с решением Excel 2003, основанным на наборе инструментов MS Office Web Services.Это решение больше не действует, так как инструментарий больше не поддерживается.См .: MSDN - Использование веб-служб в Excel 2007 .Ссылка предоставляет решение для Excel 2007, которое можно транспонировать в Excel 2010. Однако вам понадобится Visual Studio 2010 с инструментами разработчиков Microsoft Office.Это также означает использование .Net Framework и кодирование на C # или VB.NET.

3 голосов
/ 22 июля 2012

FWIW на момент публикации я обнаружил, что старый инструментарий Web References из Excel 2003 по-прежнему создает рабочий код VBA в Excel 2007/10 (обратите внимание, что за последние 18 лет были некоторые шаткие моменты с различными обновлениями Windows).месяцев, из-за которых этот код не работал, поэтому я не считаю свое решение «надежным»).

Мой ужасный взлом включает установку Excel 2003, затем Web References Toolkit, затем установку Excel 2007 или Excel 2010. I 'Я настроил 3 ПК с помощью этого хака, и все они создают рабочий код VBA для использования веб-сервисов asmx (я не пробовал подключаться к другим типам веб-сервисов, но не понимаю, почему они не будут работать).

Официальный метод MS, использующий VSTO, является слишком большим шагом для некоторых наших клиентов, и этот взлом VBA сделал их счастливыми.

0 голосов
/ 14 сентября 2017

Моникер службы Windows Communication Foundation (WCF) для интеграции веб-служб в среды разработки на основе COM, такие как Microsoft Office Visual Basic для приложений (Office VBA) или Visual Basic 6.0. Подробнее см. Ссылку https://docs.microsoft.com/en-us/dotnet/framework/wcf/samples/using-the-wcf-moniker-with-com-clients

0 голосов
/ 30 июня 2016

Несколько лет спустя ... я нашел эту страницу , которая является лучшим и наиболее ясным объяснением и примером, который я нашел до сих пор, включая интересную ссылку, предоставляющую услуги для игры с .

...