主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

执行

MATLABコマンドをオートメーションサーバーで実行

概要

IDLメソッドシグネチャ

执行([in] BSTR命令)

微软Visual Basicクライアント

作为字符串执行(命令)

MATLABクライアント

结果=执行(h,“命令”)

説明

结果=执行(h,“命令”)は,命令で指定されているMATLAB®ステートメントを,hに接続されたMATLABオートメーションサーバーで実行します。引数を指定して関数を呼び出すには,函数宏指令を使用します。

サーバーは,コマンドからの出力と,MATLABの任意の警告メッセージまたはエラーメッセージを结果に返します。MATLABコマンドをセミコロンで終了して,警告メッセージやエラーメッセージが発行されない場合,结果は空になることがあります。

COM関数は,微软®窗户®システムでのみ使用可能です。

すべて展開する

この例では,MATLAB行列に対してコマンドを実行し,その結果をVisual Basic . net®クライアントに返す方法を説明します。この例ではクライアントで行列を作成し,その内容をMATLABワークスペースで変更します。

类型comexecute.vb
Dim Matlab As Object Dim data(6) As Double Dim B As Object B = Nothing Matlab = CreateObject(" Matlab. application") For i = 0 To 6 data(i) = i * 15 Next iPutWorkspaceData("A", "base", data) Matlab。执行("A = A *2;") Matlab。GetWorkspaceData("A", "base", B) MsgBox(" double second value of A = " & B(0,1)))

この例では,MATLAB行列に対してコマンドを実行し,その結果をVBAクライアントに返す方法を説明します。この例ではクライアントで行列を作成し,その内容をMATLABワークスペースで変更します。

类型comexecute.vba
Dim Matlab As Object Dim MATLAB_version As String Dim data(6) As Double Set Matlab = CreateObject(" Matlab. application") For i = 0 To 6 data(i) = i * 15 Next i x = Matlab. Next i x = Matlab. NextPutWorkspaceData("A", "base", data) Matlab。Execute ("A = A *2;") y = Matlab。GetWorkspaceData("A", "base", B) MsgBox (" double second value of A = " & B(0,1)))

ヒント

  • 执行からの出力をクライアントウィンドウに表示するには,出力変数结果を指定します。

  • エラーが発生した場合,関数执行はテキストの先頭に文字???を追加してMATLABエラーメッセージを返します。

R2006aより前に導入