Ошибка .NET: не удалось найти зависимость «Microsoft.Office.Interop.Excel».

Мой коллега написал DLL, которая управляет Excel.
Когда я ссылаюсь на его DLL в своем приложении .NET, я получаю предупреждение:

The dependency 'Microsoft.Office.Interop.Excel' could not be found. 

Мое приложение будет скомпилировано.
Однако, когда я дохожу до фрагмента, который использует DLL моего коллеги для доступа к Excel, возникает исключение с сообщением выше.

У нас должны быть идентичные настройки: Windows XP Pro SP3, VS2003, .NET 1.1, Office 2003.

Моя проблема похожа на этот вопрос, но я не знаю, то же самое .

Любая помощь или предложения с благодарностью!

Обновлять:

Спасибо за ответы!

Я не добавлял явную ссылку на Microsoft.Office.Interop.Excel.
Конечно, не должен?
Однако: когда я пытался добавить эту ссылку, я не могу найти Microsoft.Office.Interop.Excel в окне Добавить Справочный диалог.

Предположительно это означает, что у меня отсутствует DLL?
... Но я не понимаю, как это могло произойти?!

Обновление (исправлено):

У @ConcernedOfTunbridgeWells есть ответ, который исправил это для меня: установка основных сборок взаимодействия.


person AJ.    schedule 12.11.2008    source источник


Ответы (5)


Вам может потребоваться установить основные сборки взаимодействия для Office, которые могут можно загрузить с здесь. В зависимости от порядка вы устанавливаете Visual Studio и Office, они могут быть не установлены по умолчанию.

person ConcernedOfTunbridgeWells    schedule 12.11.2008
comment
Если вы работаете в Visual Studio 2010, вам нужно выйти и снова войти, прежде чем вы увидите DLL-файлы Microsoft.Office.Interop.* на вкладке .NET при добавлении ссылки на сборку. - person MacGyver; 11.02.2012

Вы явно добавили ссылку на Microsoft.Office.Interop.Excel в свой проект?

person Jon Skeet    schedule 12.11.2008
comment
На самом деле, все, что мы можем сказать, не имеет большого значения, пока не будет дан ответ на этот вопрос. Хе. - person Robert S.; 12.11.2008
comment
Не следует добавлять ссылку на Microsoft.Office.Interop.Excel. Вместо этого убедитесь, что PIA установлены (см. сообщение NXC) и добавьте ссылку COM в библиотеку типов Microsoft Excel 11.0. - person Joe; 13.11.2008

Попросите коллегу прислать вам файл Interop.Excel.dll, который находится у него в папке bin. В качестве альтернативы, как предложил Джон выше, вы можете добавить ссылку на библиотеку Microsoft Excel на вкладке COM диалогового окна «Добавить ссылку».

person Sijin    schedule 12.11.2008

У меня была такая же проблема, когда я пытался запустить «официальные» образцы F# на CodePlex. Проекты ссылались на Interop V11. Я удалил ссылки и снова добавил их, заметив, что у меня есть V9, V12 и V14. Я добавил V12, и все заработало без каких-либо дальнейших изменений.

Что-то, что вы, возможно, захотите попробовать, прежде чем устанавливать еще одну версию взаимодействия.

person nathanchere    schedule 01.10.2010

Я просто решил это следующим образом:

  • Сначала я иду в Добавить ссылку
  • Нажмите COM в верхней левой части окна «Добавить ссылку».
  • Найдите библиотеку объектов Microsoft Excel 15.0.
  • Или, может быть, это не 15.0, а просто библиотека объектов.

Я использую Microsoft Office 2013 и Microsoft Visual Studio 2012.

person Emmanuel    schedule 09.09.2014