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

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

댓글 수: 2

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

댓글을 달려면 로그인하십시오.

 채택된 답변

michio
michio 2017년 12월 8일

1 개 추천

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

댓글 수: 3

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

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Excel アドイン에 대해 자세히 알아보기

질문:

2017년 12월 8일

댓글:

2017년 12월 18일

Community Treasure Hunt

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

Start Hunting!