Architect's Log

I'm a Cloud Architect. I'm highly motivated to reduce toils with driving DevOps.

相互運用型 'Microsoft.Office.Interop.Excel.ApplicationClass' を埋め込むことができません。代わりに適用可能なインターフェイスを使用してください。

どういうこと?

.NETからExcelを扱うときに、以下のビルドエラーが発生しました。

相互運用型 'Microsoft.Office.Interop.Excel.ApplicationClass' を埋め込むことができません。代わりに適用可能なインターフェイスを使用してください。
環境
  • Visual Studio 2010 SP1
  • .NET Framework 4
  • Excel 2007
ビルドエラー発生箇所
// using Microsoft.Office.Interop.Excel;
Application application = new ApplicationClass();

どうすれば?

以下のように修正したら、ビルドエラーが解消されました。

// using Microsoft.Office.Interop.Excel;
Application application = new Application();

参考

.NET Framework 4.0でIMultiLanguage2の作成に失敗する
文字コードを判別するプログラムを、mlang.dllに搭載されているIMultiLanguage2インターフェイスより利用したいと考えています。しかしながら、下記の場所でコンパイルエラーが発生します。 ...