« JScriptのArrayオブジェクトからの取り出し(pop/shift)の代替 | トップページ | VBScriptやVBAからJScriptのArrayオブジェクトのインデックスアクセス(その2) »

2008年5月15日 (木)

VBScriptやVBAからJScriptのArrayオブジェクトのインデックスアクセス

VBScriptの配列は、a(k)でインデックスアクセスします。
一方、JScriptのArrayオブジェクトは、JScriptで、a[k]でインデックスアクセスします。
では、JScriptのArrayオブジェクトを、VBScriptやVBAで、どうやってインデックスアクセスするか?

既存のインデックスなら、プロパティとして、a.[0]でアクセスできますが。。。

参照は、
  x=a[k]
の代わりに、
  x=Eval("a.[" & k & "]")
また、VBAなら、
  x = CallByName(a, k, VbGet)

設定は、
  a[k]=x
の代わりに、
  Execute "a.[" & k & "]=x"

しかし、EvalやExecuteは使いにくいですね。新規のインデックスにも使えないし。

« JScriptのArrayオブジェクトからの取り出し(pop/shift)の代替 | トップページ | VBScriptやVBAからJScriptのArrayオブジェクトのインデックスアクセス(その2) »