3

Excel と通信し、セルに対して標準的な読み取り/書き込み操作を実行する Autodesk Revit アドインを開発しています。Microsoft.Office.Interop.Excel (v12.0.0.0) を参照しました。2010 以降ではなく Office 2007 をインストールしているユーザーがいる可能性があるためです。私は Visual Studio 2013 を使用しています。これがコードの冒頭です。

Excel.Application xlApp;
    Excel.Workbook xlWorkBook;
    Excel.Worksheet xlWorkSheet;
    object misValue = System.Reflection.Missing.Value;

    xlApp = new Excel.Application();

ただし、一部のコンピューターでは、次のエラーが返されます。

Revit で System.Runtime.InteropServices.COMException(0x80040154) が発生しました: CLSID (00024500-000-0000-C000-000000000046) を持つコンポーネントの COM クラス ファクトリを取得できませんでした。次のエラーが原因です: 80040154 クラスが登録されていません (HRESULT からの例外: 0x80040154 (REGDB_E_CLASSNOTREG))。

Office 2007/2010/2013 がインストールされている 64 ビット/32 ビットの複数のコンピューターで動作します。ただし、同じ仕様の他のコンピューターでは機能しません。何が間違っているかを知るにはどうすればよいですか?

編集: この特定の行でエラーが返されます: xlApp = new Excel.Application();

誰かが dll を登録することを提案しましたが、それは Microsoft.Office.Interop では機能しません。 HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))

4

1 に答える 1