配布したExcel Add-inを実行すると「Error in VBAProject​:ActiveXコン​ポーネントはオブジェ​クトを作成できません​。」が表示される。

MATLAB関数をライブラリコンパイラでExcelアドインのインストーラーを作成し、 MATLABが入っていないPCにインストールし実行すると「Error in VBAProject:ActiveXコンポーネントはオブジェクトを作成できません。」が表示され実行できません。 また、PCによって実行ができるPCとできないPCが存在します。
これらを回避する方法を教えてください。

2 comentarios

michio
michio el 8 de Dic. de 2017
確認ですが、MATLAB Compilerの機能でMATLAB関数をExcelアドインにコンパイルし、Excel上で使用されている、という理解でよいですか?
Toshiki Nakajima
Toshiki Nakajima el 8 de Dic. de 2017
はい。
そのとおりです。

Iniciar sesión para comentar.

 Respuesta aceptada

michio
michio el 8 de Dic. de 2017
Excel アドイン エラーと推奨される解決策 の3つ目のエラーですが、DLL が登録されていない可能性があります。
DLL が登録されていない場合、DOS ウィンドウを開き、フォルダーを '<projectdir>\distrib' (<projectdir> はプロジェクト ファイルの場所を表す) に変更して、次のコマンドを実行します。
mwregsvr <projectdll>.dll
詳細は、 アドインと COM コンポーネントの登録 を参照してください。

3 comentarios

Toshiki Nakajima
Toshiki Nakajima el 8 de Dic. de 2017
上記を実行しDOSウィンド上で「DllRegisterServer in myaddin_1_2.dll succeeded」が表示されました。
しかし再度Excel側で実行しても「Error in VBAProject:ActiveXコンポーネントはオブジェクトを作成できません。」が表示されてしまいます。
michio
michio el 8 de Dic. de 2017
もし配布先 PC に複数の MCR をインストールされている場合は、mwregsvr が dll を作成した MATLAB バージョンの MCR ディレクトリ下に存在する exe であることもご確認ください。
dll を生成した MATLAB バージョンと、mwregsvr.exe のバージョンが異なることで、エラーが発生することもあります。DOS プロンプト上で 
> where mwregsvr 
と実行しますと、使用される (システムパスの先頭にある) mwregsvr.exe を確認できます。
Toshiki Nakajima
Toshiki Nakajima el 18 de Dic. de 2017
where mwregsvrを実行したところ一番上にあるものは作成したdllのバージョンであることを確認しました。
MATLABのスタンドアローンアプリケーションで配布したところ問題なく実行できたので、
できないものに関してはそちらの方で対応使用と思います。
ご対応ありがとうございました。

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Productos

Preguntada:

el 8 de Dic. de 2017

Comentada:

el 18 de Dic. de 2017

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!