MLGETVAR を使用すると、型が一致しない旨のエラーが表示されるのはなぜですか?
9 views (last 30 days)
Show older comments
VBA マクロで MLGETVAR を実行し、MATLAB ワークスペース上の変数を Excel に取り込んでいます。下記コードを Excel で実行するとエラーが表示されます。原因と回避方法を教えてください。
Sub Fetch()
Dim DataJ As Double
MLGetVar "J", DataJ
End Sub
(エラーメッセージ)
実行時エラー'13':
型が一致しません。
Run-time error '13':
Type mismatch
Accepted Answer
MathWorks Support Team
on 22 Mar 2013
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 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!