複数の MATLAB 関数の Excel クラスへの割り当て
MATLAB でのアドインの作成
メモ
Microsoft® Excel® の関数構文 (=myfunction(input)) を使用して MATLAB® 関数を呼び出すには、MATLAB 関数は単一のスカラー出力引数を返さなければなりません。複数の出力を指定するには、Function Wizard またはカスタム VBA コードを使用してマクロを作成します。
MATLAB に付属している
xlbasicフォルダーを作業フォルダーにコピーします。copyfile(fullfile(matlabroot,'toolbox','matlabxl','examples','xlbasic'),'xlbasic')
MATLAB コマンド プロンプトで、作業フォルダー内の新しい
xlbasicフォルダーに移動します。MATLAB 関数
doubleit.m、incrementit.m、およびpowerit.mを確認します。function output = doubleit(input) output = input * 2;function output = incrementit(input1, input2) output = input1 + input2;function output = powerit(input1, input2) output = power(input1, input2);Excel アドイン コンパイラ アプリまたは
compiler.build.excelAddInを使って、Excel アドインをビルドします。以下の情報をプロジェクトに使用します。
アドイン名 myexcelfunctionsクラス名 myexcelfunctionsclassコンパイル対象ファイル doubleit.m
incrementit.m
powerit.mたとえば、
compiler.build.excelAddInを使用している場合は、以下を入力します。buildResults = compiler.build.excelAddIn(... ["doubleit.m","incrementit.m","powerit.m"],... "AddInName","myexcelfunctions",... "ClassName","myexcelfunctionsclass",... "GenerateVisualBasicFile","on",... "Verbose","on");
詳細については、MATLAB からの Excel アドインの作成の手順を参照してください。
Microsoft Excel へのアドインのデプロイ
アドインをエンド ユーザーにデプロイするには、アドインの配布および Microsoft Excel への統合を参照してください。
コンポーネントを登録してアドインをインストールしたら、関数
doubleit、incrementit、およびpoweritをスプレッドシートで使用できます。Microsoft Excel を空白のワークブックで開きます。
以下を実行して、関数をテストします。
セル A1 に
=doubleit(2.5)を入力します。セル A2 に
=incrementit(11,17)を入力します。セル A3 に
=powerit(7,2)を入力します。
セル A1、A2、A3 に、値 5、28、49 がそれぞれ表示されるはずです。
(オプション) これをテンプレートとして保存して、新規の Microsoft Excel スプレッドシートで関数
doubleit、powerit、およびincrementitを使用します。[ファイル]、[名前を付けて保存] を選択し、ファイルの種類に [.xlt (テンプレート)] を選択します。
フォルダーに移動します。Office_Installation_folder\XLSTARTファイルを
として保存します。Office_Installation_folder\XLSTART\Book.xltメモ
このテンプレートを保存するには、Microsoft Excel のマクロ セキュリティ レベルを [中] または [低] に設定しておかなければなりません。