こんにちわ。New Collectionについて質問があります。Dim col As New Collectioncol.Add "a"col.Add "b"col.Add "c"col.Item(2) = "x" (あるいは col(2)="x")colの2番目の要素を "b" から "x" に置き換えたいのですが、これではうまくいきません。ListBoxコントロールの Listプロパティに相当する機能はないのでしょうか?よろしくお願いいたします。
> ListBoxコントロールの Listプロパティに相当する機能はないのでしょうか?Add による「挿入」と、Remove での「削除」を行う事になるかと思います。
> > ListBoxコントロールの Listプロパティに相当する機能はないのでしょうか?> > Add による「挿入」と、Remove での「削除」を行う事になるかと思います。レスありがとうございます。Addによる挿入は可能ですか?上の例で言えば、他の要素はそのままにして、2番目の要素だけを置き換えたいのですが、可能でしょうか?何度もすみません。
> 上の例で言えば、他の要素はそのままにして、2番目の要素だけを置き換えたいのですが、> 可能でしょうか?何度もすみません。Private Sub Command1_Click() Dim col As New Collection col.Add "a" col.Add "b" col.Add "c" col.Remove 2 col.Add "X", Before:=2 Debug.Print col.Item(1), col.Item(2), col.Item(3)End Sub
> > 上の例で言えば、他の要素はそのままにして、2番目の要素だけを置き換えたいのですが、> > 可能でしょうか?何度もすみません。> > Private Sub Command1_Click()> Dim col As New Collection> col.Add "a"> col.Add "b"> col.Add "c"> > col.Remove 2> col.Add "X", Before:=2> Debug.Print col.Item(1), col.Item(2), col.Item(3)> End Subありがとうございました。> col.Add "X", Before:=2こうやればよかったのですね!ありがとうございます。
勘違いしないように、下記も試して見て下さい。Private Sub Command1_Click() Dim col As New Collection col.Add "a" col.Add Text1 col.Add "c" col.Item(2) = "X" Debug.Print col.Item(1), col.Item(2), col.Item(3) col.Item(2) = Text2 Debug.Print col.Item(1), col.Item(2), col.Item(3) col.Item(2).Text = "1234" Debug.Print col.Item(2), Text1.Text, Text2.TextEnd Sub