References и автоматическое подключение библиотек на поздних версиях MS Office - VBA

Узнай цену своей работы

Формулировка задачи:

Уважаемые программисты. Хотел бы разобраться что к чему. Есть программка (то есть макрос) на VBA, формирующая отчетики в Word из Excel. Я ее делаю на 2003 версии офиса. Программка будет стоять и может даже носться с одного комьютера на другой и мне нужна уверенная ее работа на версиях Excel 2003 и выше. Проблема следующая: если открыть .xls-файл с программой на Excel 2007 или 2010 в References прописываются новые библиотеки. Если после этого открываем снова на 2003 версии вылезает вот такая дрянь: MISSING:Microsoft Word 12.0(зависит от версии где открывали) Object Library - во вложении картинка. С этим понятно начинаются разные веселые глюки - например функцию Str() он у меня не признает. Но тут еще все понятно конечно - Excel просто прописал ту библиотеку которая поновее. Как с этой бедой бороться мне ясно - убираем галочку где MISSING и ставим напротив аналогичной библиотеки. Все работает А теперь вопрос:

Как избежать автоматического прописывания более поздних версий библиотек в References?

(извините если сказал глупость) Один вариант я знаю: установить пароль на проект - тогда Эксель без моего разрешения не будет самоуправствовать. Чего еще можно придумать? А то надоела эта билиберда - на работе отредактируешь макрос, а дома каждый раз приходится лезть в эти References.

Решение задачи: «References и автоматическое подключение библиотек на поздних версиях MS Office»

textual
Листинг программы
Dim WordApp As New Word.Application 'раннее связывание - требуется Reference
'-------------------------------
Dim WordApp As Object
Set WordApp = CreateObject("Word.Application") 'позднее связывание - не требуется Reference

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.143 из 5
Похожие ответы