Member 13197019 Ответов: 2

Ошибка: класс не зарегистрирован


Привет,

Я пытаюсь использовать приложение Visual Basic windows form для открытия microsoft office 2013 Excel. Когда моя программа пытается открыть Excel, я получаю следующую ошибку.

Исключение типа 'System.Runtime.InteropServices.COMException' произошло в mscorlib.dll но не был обработан в пользовательском коде

Дополнительная информация: получение фабрики COM-класса для компонента с CLSID {00024500-0000-0000-C000-000000000046} не удалось из-за следующей ошибки: класс 80040154 не зарегистрирован (исключение из HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).

Когда я пытаюсь запустить код, он останавливается на,
Dim xlApp As New Excel.Application

и появляется приведенное выше заявление об ошибке.

В начале мой код:
Imports Excel = Microsoft.Office.Interop.Excel


Public Class Form1

    'Objects defined
    Dim xlApp As New Excel.Application
    Dim xlWorkBook As Excel.Workbook
    Dim xlSheet As Excel.Worksheet


Что я уже пробовал:

Я новичок в VB и не очень хорош в отладке.

Richard MacCutchan

У вас есть Excel, установленный в вашей системе?

0x01AA

Только чтобы было понятно, тот же вопрос, что и выше, от Ричарда Маккатчана. Excel установлен на компьютере, с которым вы работаете?
Потому что "нет Excel" , то и "нет интерфейса"

[no name]

"я не очень хорош в отладке", а затем хорошо справляюсь с этим. Сообщение об ошибке совершенно ясно, и средства правовой защиты легко найти с помощью простого поиска google, так что я не уверен, что ваш фактический вопрос будет.

2 Ответов

Рейтинг:
9

Member 13197019

Спасибо, Дэйв-я проверил и подтвердил, что запускаю с короткого пути. Это побудило меня сделать ремонт на установке, которая решила эту проблему. Хотя я не уверен, что именно было отремонтировано.
Спасибо всем за ответы!


Рейтинг:
2

Dave Kreskowiak

Эта ошибка означает, что версия Excel, для которой вы написали этот код, не установлена на компьютере.


Member 13197019

Спасибо за ответы! Я прошу прощения за то, что не упомянул ранее, что у меня на компьютере установлен office 2013, и я действительно добавил ссылку на excel 15.0, когда начал свой проект.

Dave Kreskowiak

Я не знаю, что тебе сказать. Именно это и означает ошибка.

Установлен ли Office таким образом, что он действительно выполняет установку при первом запуске ярлыков приложений? Это установило бы некоторые вещи, достаточные для регистрационных данных COM, но приложение на самом деле не установлено, пока вы не запустите его с ярлыка.