Как открыть автоматически сгенерированные классы веб-ссылок для VBA в .NET Excel AddIn - PullRequest
0 голосов
/ 12 октября 2018

Я использую Visual Basic .NET для создания надстройки Excel, которая предоставляет клиентский доступ к веб-службе.Visual Basic создает файл Reference.vb из wsdl веб-службы, и этот файл vb содержит интерфейс с различными классами, которые используются для доступа к веб-службе.

В этой надстройке я написал и поделился некоторымифункции через COM для VBA.Я хотел бы также поделиться классами в Reference.vb с VBA.Как таковые, классы в Reference.vb отображаются в обозревателе объектов VBA, но все они пусты.

Visual Basic не позволяет мне помещать

<Microsoft.VisualBasic.ComClass()> _
<System.Runtime.InteropServices.ComVisibleAttribute(True)> _

в Interface заявление в Reference.vb.Кажется, что если я хочу, чтобы классы в Reference.vb отображали «неработоспособность» и могли использоваться в браузере объектов VBA, я должен добавить

'<Microsoft.VisualBasic.ComClass()> _
'<System.Runtime.InteropServices.ComVisibleAttribute(True)> _

к каждому из Partial Public Class объектов в Reference.vb.Это довольно утомительно, так как есть много классов, особенно если учесть, что Reference.vb генерируется автоматически и заменяется каждый раз, когда я обновляю ссылку на сервис.Таким образом, мне пришлось бы постоянно пересматривать Reference.vb.

Есть ли какой-нибудь способ "массового представления" классов из Reference.vb в VBA, чтобы использовать веб-сервис непосредственно из VBA?

У меня Visual Studio 2010.

Спасибо!

...