Main Content

GetWorkspaceData

オートメーション サーバーのワークスペースからのデータ

概要

IDL メソッド シグネチャ

HRESULT GetWorkspaceData([in] BSTR varname, [in] BSTR workspace,
    [out] VARIANT* pdata)

Microsoft Visual Basic クライアント

GetWorkspaceData(varname As String, workspace As String) As Object

MATLAB クライアント

D = GetWorkspaceData(h,'varname','workspace')

説明

D = GetWorkspaceData(h,'varname','workspace') はハンドル h に接続したサーバーの指定 workspace から変数 varname に格納されたデータを取得し、出力引数 D に返します。workspace の値は base または global です。VBA コードを作成する場合はこの構文を使用します。

数値データおよび文字配列データを取得する場合、関数 GetFullMatrix および関数 GetCharArray の代わりに関数 GetWorkspaceData を使用します。GetWorkspaceData はスパース配列、構造体、または関数ハンドルには使用しないでください。

VBScript クライアントでは、関数 GetWorkspaceData と関数 PutWorkspaceData を使用して、MATLAB® ワークスペースと数値データをやり取りします。これらの関数は、関数 GetFullMatrix と関数 PutFullMatrix で使用される safearray ではなく、variant データ型を使用します。VBScript は safearray をサポートしていません。

すべて展開する

この例では、Visual Basic® .NET クライアントを使用して、MATLAB オートメーション サーバーからデータを読み取る方法を説明します。

type getworkspacedata.vb
Dim Matlab As Object
Dim C2 As Object
Dim Result As String
Matlab = CreateObject("matlab.application")
Result = MatLab.Execute("C1 = {25.72, 'hello', rand(4)};")
MsgBox("In MATLAB, type" & vbCrLf & "C1")
Matlab.GetWorkspaceData("C1", "base", C2)
MsgBox("second value of C1 = " & C2(0, 1))

この例では、VBA クライアントを使用して、MATLAB オートメーション サーバーからデータを読み取る方法を説明します。

type getworkspacedata.vba
Dim Matlab As Object
Dim C2 As Variant
Dim Result As String
Set Matlab = CreateObject("matlab.application")
Result = MatLab.Execute("C1 = {25.72, 'hello', rand(4)};")
MsgBox("In MATLAB, type" & vbCrLf & "C1")
X = Matlab.GetWorkspaceData("C1", "base", C2)
MsgBox("second value of C1 = " & C2(0, 1))

バージョン履歴

R2006a より前に導入