Недавно компания обновилась до Windows 10 с Windows 7. Наряду с обновлением операционной системы произошло обновление до Office с 2010 по 2016 год. Компания запускает приложение Visual Studio 2013, которое будет загружать книги Excel для извлечения, просмотра и изменения (добавления, обновления или удаления) данных с использованием VBA. Рабочие книги используют ActiveWorkbook.Path и ActiveWorkbook.FileName, чтобы определить среду для обновления. Если ActiveWorkbook.Path или ActiveWorkbook.FileName содержали «SERVER1», это означало производственную среду, но если любой из них содержал «SERVER2», это означало среду разработки. Эта функция препятствовала использованию пользователями сохраненных копий книги и в конечном итоге приводила к обновлению неправильной среды Поскольку стандартом компании является использование более современного браузера, Microsoft Edge или Chrome, тестирование выявило проблему в обоих браузерах. Оба браузера загружают файл либо в локальный временный файл inte rnet, либо в локальный каталог загрузки. После открытия загруженного файла значения ActiveWorkbook.Path и ActiveWorkbook.FileName являются локальными каталогами. Как часть открытой функциональности, код VBA пытается извлечь имя сервера из ActiveWorkbook.Path и / или ActiveWorkbook.FileName. Поскольку имя сервера не существует, по умолчанию в книге используется тестовая среда. Поскольку у пользователя нет доступа к изменению переменной, хранящей имя сервера, он не может использовать рабочую книгу.
Я не хочу жестко кодировать сервер в рабочей книге. Я не хочу полагаться на пользователя, чтобы выбрать соответствующую среду. Я бы хотел, чтобы рабочую книгу открывали прямо с сервера. Я понимаю, что это может быть проблемой безопасности, но пользователи хотят этого.
Я исследую и не могу найти решение этой проблемы. Буду признателен за любые предложения по решению этой проблемы.
TIA Anthony