У меня есть приложение VB6, которому нужно вызвать подпрограмму Word 2010 VBA и указать строковый параметр.Подпрограмма VBA находится в надстройке, которая включена с открытым документом.
Согласно справочнику MSDN (http://msdn.microsoft.com/en-us/library/ff838935.aspx) Я должен иметь возможность указывать этот параметр после имени макроса в порядке.
Мой код, вызывающий подпрограмму, выглядит так:
sMacro = "Link.Functions.UpdateFootnote"
sParam = "Footnote Text"
DocApp.Run sMacro, sParam
'I've also tried
DocApp.Run MacroName:=sMacro, varg1:=sParam
'and
DocApp.Run "Link.Functions.UpdateFootnote","Footnote Text"
В каждом случае это приводит к ошибке 438 во время выполнения: «Объект не поддерживает это свойство или метод».
DocApp.Run "Link.Functions.UpdateFootnote, Footnote text"
Это дает ошибку времени выполнения -2147352573 (80020003) «Невозможно запустить указанный макрос»
В качестве проверки у меня есть 2-й макрос без параметров (который затем вызывает исходный макрос), и он работает нормально.
DocApp.Run "Link.Functions.UpdateFootnoteTest"
Что я тут не так делаю?