MLGETVAR を使用すると、型が一​致しない旨のエラーが​表示されるのはなぜで​すか?

9 ビュー (過去 30 日間)
MathWorks Support Team
MathWorks Support Team 2013 年 3 月 22 日
VBA マクロで MLGETVAR を実行し、MATLAB ワークスペース上の変数を Excel に取り込んでいます。下記コードを Excel で実行するとエラーが表示されます。原因と回避方法を教えてください。
Sub Fetch()
Dim DataJ As Double
MLGetVar "J", DataJ
End Sub
(エラーメッセージ)
実行時エラー'13':
型が一致しません。
Run-time error '13':
Type mismatch

採用された回答

MathWorks Support Team
MathWorks Support Team 2013 年 3 月 22 日
Spreadsheet Link EX 3.0.3 (R2009a) のドキュメントに記載されています。R2008b 以前のバージョンをご利用の場合は、以下を参照してください。
MLGETVAR で返された変数 DataJ のデータ型が原因でエラーとなります。下記2通りの回避方法があります。
1. データ型を Variant で宣言する
下記のように Variant 型で宣言してください。
Sub Fetch()
Dim DataJ As Variant
MLGetVar "J", DataJ
End Sub
2. 型宣言をしない
型宣言をしなければ、MLGETVAR は Variant 型のデータを返します。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange外部言語インターフェイス についてさらに検索

Community Treasure Hunt

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

Start Hunting!