2010-11-04 3 views
1

У меня есть макрос в Excel 2007, который взаимодействует с Microsoft Word. Я применяю библиотеку объектов Microsoft Word 12.0 для доступа к необходимым командам. Однако, когда пользователь Office 2003 пытается использовать макрос, он получает сообщение об ошибке. Это связано с тем, что Office 2003 использует библиотеку объектов Microsoft Word 11.0. Библиотека 12.0 считается отсутствующей.Совместимость библиотеки объектов Microsoft Word с 2007 по 2003 год

Если я сохраню документ в 2003 году с библиотекой объектов 11.0, все будет хорошо. Оба пользователя в 2003 и 2007 годах могут использовать макрос. Но 2007, похоже, автоматически обновляет библиотеку объектов 11.0 до 12.0. Таким образом, если пользователь сохраняет документ в 2007 году и пытается передать его пользователю 2003 года, функциональность снова сломается.

Есть ли способ сказать VBA для ссылки 11.0 при использовании 2003?

ответ

0

Вы можете использовать позднюю привязку. Удалите ссылку на библиотеку Word и используйте:

Dim ws As Object 

Set ws=CreateObject("Word.Application") 

Вам нужно будет изменить все встроенные константы Word на значения. Вы можете найти значение, прежде чем удалить ссылку на библиотеку, набрав скажу,

?wdDocument 

В ближайшем окне, или с помощью обозревателя объектов.

Смежные вопросы