VBAマクロを記述せ​ずに、Excelのセ​ル上でユーザ定義MA​TLAB関数を実行す​るにはどうすればよい​ですか?

8 visualizaciones (últimos 30 días)
MathWorks Support Team
MathWorks Support Team el 27 de En. de 2010
Spreadsheet Link EXで、VBAマクロを記述せずに、Excelのセル上からユーザ作成のMATLAB関数を呼び出すにはどうすればよいですか?

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 27 de En. de 2010
Spreadsheet Link EX API において、Excel のセルからユーザ定義 MATLAB 関数を呼び出す場合、次の手順にしたがって行ってください。
1. MATLAB 関数を作成。たとえば、ここでは、myMLFcn.m とします。
2. 上記の MATLAB 関数を MATLAB のスタートアップパス上のディレクトリに置くか、あるいは、スタートアップのディレクトリを含んでいる MATLAB スタートアップファイルの1つにコマンドを追加します。たとえば、MATLABRC.m の最後に次のように追加します。
addpath '$MATLAB_FUNCTION_ROOT'
ここで、$MATLAB_FUNCTION_ROOTは、上記 1. で作成した MATLAB 関数を含むディレクトリです。これにより、MATLAB を起動すると常にパスが追加されます。フルデスクトップモードでも、あるいは、COMオートメーションサーバでもこの関数は可視化されます。
3. 必要に応じて、MLPutMatrix か、あるいは等価な API を使って、データをスプレッドシートから MATLAB にエクスポートします。
4. 1. の MATLAB 関数 myMLFcn を次のように実行します。
=MLEvalString("[y1, y2, ...] = myMLFcn(x1, x2, ...)")
y1,y2,...は出力引数、x1,x2,...は入力引数です。なお、ここでは、入力引数の x1,x2,...は既に MATLAB のワークスペース上に存在すると仮定しています。
5. 必要に応じて、出力引数を MLGetMatrix か、あるいは等価な API を使ってスプレッドシートに出力します。

Más respuestas (0)

Categorías

Más información sobre Data Export to MATLAB en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!