Справочные материалы по библиотекам, VBA Excel 16.0, Проект 14.0 - PullRequest
0 голосов
/ 17 декабря 2018

Мой клиент недавно мигрировал из 32-битного Excel 2016 в 64-битный Excel под Office 365 и сохранил 32-битный MS Project Standard 2010.

У меня есть собственный VBA-код для MS Project Standard 2010, который управляетПриложение Excel 2016 путем раннего связывания с помощью библиотеки объектов Excel 16.0.После переноса Excel в 64-разрядную версию Office365 ссылка на библиотеку (в MS Project Standard 2010) больше не доступна.Это не MISSING , его просто нет в списке.Он даже не загружается по GUID.У меня нет прав администратора и я не могу проверять или редактировать реестр.Моя служба поддержки объяснила, что проблема в , вероятно, , потому что мы смешиваем 32-разрядные и 64-разрядные приложения.

Я обошел проблему, преобразовав код из раннего связывания в поздний.связывание.Я, вероятно, не все поймал (я создал очень много кода в очень многих инструментах приложения), и меня беспокоит то, что некоторые функции моего кода, которые не были преобразованы правильно, могут не быть обнаружены в течение некоторого времени.

У меня вопрос, должно ли приложение Project 2010 (Project 14.0) иметь возможность ссылаться на 64-битную версию Excel 16 в библиотеке объектов Office365?Если да, то на что должен обращать внимание мой сотрудник службы поддержки, чтобы решить эту проблему, пожалуйста?

Если ответ на самом деле отрицательный, мне просто придется придерживаться позднего связывания и провести обширное тестирование.

Заранее большое спасибо,

Малкольм

1 Ответ

0 голосов
/ 17 декабря 2018

Нельзя создавать перекрестные ссылки между 64-разрядными и 32-разрядными библиотеками на одном хосте.Хост может использовать только библиотеки одинаковой битности.Позднее связывание не поможет вам в этой ситуации - оно поможет вам в случае несовпадения версий, но не в том случае, если битность не совпадает.

Если вам необходимо продолжить автоматизацию между Project и Excel, вам может потребоваться установка 32-разрядной версии Excel или установка 64-разрядной версии Project.Есть третий вариант - использовать VBScript или Powershell и запускать его вне процесса, но это может быть большой работой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...