Невозможно привести com объект типа microsoft office interop excel applicationclass

Обновлено: 07.07.2024


Тем не менее, я не мог избавиться от этой ошибки - я считаю, что у нее есть собственное быстрое решение.

Я немного покопался на этом сайте и наткнулся на это решение: тип взаимодействия не может быть встроен

Однако я не мог понять, поэтому не мог реализовать то, что было предложено в качестве решения.

Любая помощь очень ценится.

Если это не ошибка кода, удалите указанный ниже ключ из реестра.

Пуск -> Выполнить -> regedit -> HKEY_CLASSES_ROOT -> TypeLib -> -> 1.8 / 1.7 (Удалить это)

Решение. Эту проблему можно решить, удалив недопустимый раздел реестра, оставшийся от более поздней версии Office. Следуйте вышеуказанным шагам.

Причина: эта проблема вызвана оставшимся разделом реестра, если вы понизили версию Microsoft Office с Office 2010 до Office 2007 или с Office 2013 до Office 2010 или 2007.

Сообщите мне, если вам не помогло это решение

Microsoft Office 365

Я запускал Microsoft Office 365 с Windows 10 и безуспешно пробовал упомянутые решения для удаления раздела реестра.

Я пошел к панели управления, пытаясь восстановить пакет Office 365.


Выбрал быстрый ремонт


Еще раз попробовал мою программу, и все заработало!

Я уверен, что ответы на этот вопрос (и аналогичные вопросы), предлагающие редактировать реестр и удалять старые ссылки на версии Office, которых больше нет на компьютере верны.

Я добавляю этот ответ только потому, что сейчас пинаю себя. Два часа потратил на поиски ключей в реестре и ни к чему не привело. Последний бросок кости заключался в том, чтобы попробовать простое ремонт в Microsoft Office и вдруг моя ошибка исчезла.

  • Благословения вам, я застрял с последних 45 минут

Windows 7 x64 / Office 365 (16.0.x) 32-разрядная / VS 2019

P.S> Была произведена проверка "после обработки" Process Monitor - теперь файл берется из первым зондом.

Компьютер был обновлен до 64-разрядной версии Office 2016, и интерфейс COM генерировал исключения при вызове из 32-разрядного приложения. У него не было старых записей TypeLib, подобных тем, что были в ответе Джайеша.

Сравнение трассировки ProcessMonitor с работающей машиной с Office 2016 привело к тому, что в

HKEY_CLASSES_ROOT \ Wow6432Node \ TypeLib \

Рабочая машина проверит несуществующий ключ реестра и вернет

На отказавшей машине был ключ реестра, но вскоре после этого возникло исключение.

После многократного удаления раздела реестра, повторного запуска трассировки и удаления следующего отказавшего ключа функциональность COM-интерфейса была восстановлена.

  • Попробовав все, что я мог придумать, я прочитал это и понял, что мой компилятор настроен на 32-битный. Снятие отметки с этого поля было последней частью головоломки.

В моем случае я удаляю regedit в:


и проблема решена.

В реестре были 1.7 и 1.8. Решено удалением:

Читайте также: