« VBA関数を呼び出すだけの構文は? | トップページ | 未初期化の配列を空の配列のように扱うUBound()の代替関数 »

2008年5月24日 (土)

Scripting.Dictionary を配列の代わりに使う。(補足)

配列の代用として使う場合は、インデックスの抜けを避けて使います。

もし、抜けがある場合は、追加インデックスに a.Keys()(a.Count-1)+1 を使います。

a.Add a.Keys()(a.Count - 1) + 1, f

または、

a.Item(a.Keys()(a.Count - 1) + 1) = f

ただし、これは、a.Count=0 のときに、エラーになるので、

If a.Count Then k = a.Keys()(a.Count - 1) + 1 Else k = 0

« VBA関数を呼び出すだけの構文は? | トップページ | 未初期化の配列を空の配列のように扱うUBound()の代替関数 »