Не удается получить Microsoft.Office.Interop ссылку на работу
У меня есть приложение winforms С#, и я просто пытаюсь открыть лист Excel. Когда я пытаюсь добавить ссылку на Microsoft.Office.Interop, часть "Office" красная и говорит "Не удается разрешить символ" Офис "".
Когда я пытаюсь построить, ошибка:
The type or namespace name 'Office' does not exist in the namespace 'Microsoft'
(are you missing an assembly reference?)
У меня установлен Office 2012, и я думаю, что у меня установлены первичные сборки Interop... но я не уверен.
Я знаю, что это должно быть так просто, но я искал ответ на этот вопрос почти час и просто не могу понять. Спасибо заранее!
Ответы
Ответ 1
Вам нужно добавить ссылку на сборку библиотеки в ваш проект. Они называются "Первичные сборки взаимодействия".
(Предполагается, что Visual Studio 2010)
Процедура
- откройте окно обозревателя решений
- разверните папку вашего проекта баян.
- щелкните правой кнопкой мыши на элементе ссылок
- выберите "добавить ссылку" из выпадающего
- выберите вкладку .NET и найдите библиотеку объектов с именем
Microsoft.Office.Interop.Excel
. - нажмите ОК
![add reference window with excel interop hilighted]()
Библиотека объектов должна теперь появиться в ваших ссылках.
![reference folder accordion with excel library hilighted]()
Ответ 2
Используйте диспетчер пакетов NuGet в VS2015
- Щелкните правой кнопкой мыши в проекте вашей визуальной студии
- Выберите "Управление пакетами NuGet"
- Введите
microsoft.office
в поле поиска
- Выберите Microsoft.Office.Interop.Excel
- Нажмите "Установить"
- Восстановите свое решение
Ответ 3
У меня была такая же ошибка сегодня утром, с приложением Winforms, которое всегда прекрасно строилось в прошлом. Все, что изменилось, было то, что наша компания обновила наши ноутбуки с Excel 2007 до Excel 2013.
После некоторого расследования я понял, что приложение было .Net 3.5-приложением, и хотя Solution Explorer предположил, что все референции прекрасны.
![Обозреватель решений]()
... на самом деле они не были. Знак "подсказка" заключался в том, что когда я попытался повторно добавить ссылки в приложении, их не удалось найти...
![Interop]()
Что мне нужно было сделать:
- обновите приложение с .Net 3.5 до .Net 4.5
- удалить связанные с Office ссылки (первые 5, показанные в моем первом
снимок экрана выше)
- повторно добавьте ссылки (теперь показаны как версии 14 или 15)
Мне также пришлось изменить одну строку кода:
excel = new Excel.ApplicationClass();
to
excel = new Excel.Application();
Как только я это сделал, приложение построено без ошибок и успешно прошло успешно.
Ответ 4
Я думаю, что вам не хватает ссылки на dll. Добавьте файл Microsoft.Office.Interop.Excel.dll для ссылки на проект, а затем попробуйте.
Ответ 5
Более простой способ добавить этот пакет в VS 2015:
в строке кода с помощью пакета нажмите "Alt + Enter", затем выберите "Найти это пространство имен на nuget.org"
![введите описание изображения здесь]()
Установите его и наслаждайтесь:)
![введите описание изображения здесь]()
Ответ 6
Вам нужно установить Office 2013, чтобы очистить эту ошибку сборки.