タイトル | : Re: ArrayListの定義 |
記事No | : 15727 |
投稿日 | : 2013/06/29(Sat) 17:25 |
投稿者 | : 魔界の仮面弁士 |
> ArrayListの配列をはじめて使いますが、 VB6 に ArrayList は存在しません。 (VB.NET には ArrayList がありますが、配列ではありません)
VB.NET の ArrayList に近い物としては、VBA.Collection オブジェクトがあります。 ソートなどが必要なケースでは、ADODB.Recordset で代用する手法もありますね。
とりあえず、VBA.Collection を用いたサンプル:
Dim col As VBA.Collection Set col = New VBA.Collection
col.Add "Item1" col.Add "Item2" col.Add "Item3"
Debug.Print "件数:", col.Count Debug.Print "1番目:", col(1) Debug.Print "2番目:", col(2) Debug.Print "3番目:", col(3)
Debug.Print "2番目を削除" col.Remove 2
Debug.Print "件数:", col.Count Debug.Print "1番目:", col(1) Debug.Print "2番目:", col(2)
もし、Collection や Dictionary などの機能ではどうしても都合が悪いのであれば、 下記の様にして、.NET の ArrayList を呼び出すこともできます。 (個人的にはあまりお奨めしません)
Dim ar As Object Set ar = CreateObject("System.Collections.ArrayList")
ar.Add "Item1" ar.Add "Item2" ar.Add "Item3"
Debug.Print "件数:", ar.Count Debug.Print "0番目:", ar(0) Debug.Print "1番目:", ar(1) Debug.Print "2番目:", ar(2)
Debug.Print "1番目を削除" ar.Remove 1
Debug.Print "件数:", ar.Count Debug.Print "0番目:", ar(0) Debug.Print "1番目:", ar(1)
|