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

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

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 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 型のデータを返します。

Più risposte (0)

Categorie

Scopri di più su 外部言語インターフェイス in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!