MLGETVAR を使用すると、型が一致しない旨のエラーが表示されるのはなぜですか?
9 ビュー (過去 30 日間)
古いコメントを表示
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
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 件のコメント
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!