Исправление ошибки "Невозможно получить свойство Open класса Workbooks"
База данных - Администрирование СУБД
Давайте поборемся с ошибкой "Невозможно получить свойство Open класса Workbooks" при программной работе с Excel.
Порой видим такую ситуацию при работе с Excel в методах с директивой &НаСервере:
Excel = Новый COMОбъект("Excel.Application");
Workbook = Excel.Workbooks.Open(ИмяФайлаExcel); - на этом этапе получаем ошибку "Невозможно получить свойство Open класса Workbooks".
Как быть?
Дело в том, что для правильной работы COM-компонента Excel в серверном режиме (то есть под системным профилем) нужно, чтобы в каталоге этого профиля существовала папка "Desktop".
То есть необходимо проверить наличие папки "Desktop" в ниже указанных каталогах и создать её в случае отсутствия.
C:\Windows\SysWOW64\config\systemprofile
C:\Windows\System32\config\systemprofile

Проще создать папку сразу в обоих каталогах, нежели заниматься изысканиями на тему "какая версия Excel установлена". Никакого вреда от присутствия папки Desktop здесь не будет.
Возможно, попутно потребуется в dcomcnfg дать права пользователю, ИЗ-ПОД КОТОРОГО ЗАПУЩЕНА СЛУЖБА СЕРВЕРА 1С на работу с компонентом "Microsoft Excel Application"

Иногда, после описанных манипуляций, требуется перезагрузка службы сервера 1С.
Вступайте в нашу телеграмм-группу Инфостарт
Вы можете заказать платную адаптацию этой статьи под ваши задачи на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.