Excel アドインのコンパイルの仕組み
MATLAB® Compiler™ では、MATLAB コードから Microsoft® Excel® アプリケーションで実行されるデプロイ可能なアドインを作成します。Excel アドインで使用するために MATLAB 関数を変換するには、ライブラリ コンパイラ アプリ、関数 compiler.build.excelAddIn
または関数 mcc
を使用します。
MATLAB コードをコンパイルすると、MATLAB Compiler は COM コンポーネント (.dll
) と VBA モジュール (.bas
) という 2 つの主要なアーティファクトを生成してから、それらを Microsoft Excel アドイン (.xla
) に統合します。
Microsoft Excel との統合をサポートするために、MATLAB Compiler はそれぞれの Excel アドインを、(オブジェクトの相互運用性に関する Microsoft のバイナリ標準である) コンポーネント オブジェクト モデルに基づく "COM" オブジェクトとしてビルドします。COM コンポーネントは Microsoft Office アプリケーションなど、複数のアプリケーションにわたって一貫したモデルを提供する共通の統合アーキテクチャを使用します。
COM コンポーネントをアプリケーションに統合するには、Microsoft Visual Basic® for Applications (VBA) を介して Microsoft Excel から COM オブジェクトにアクセスします。COM オブジェクトは、単一の "クラス" を Visual Basic プログラミング環境に公開します。このクラスは、プロジェクトに含める元の MATLAB 関数に対応する "メソッド" の形式で、MATLAB 関数へのインターフェイスを提供します。VBA モジュールには単純な呼び出しラッパーが含まれており、それぞれがクラスの各メソッドの関数プロシージャとして実装されています。