- ベストアンサー
エクセルのVBAでオブジェクトの配列変数は使えますか?
VBですとオブジェクトの配列変数というか、コピーしたときに自動的に配列になってしまいますが、エクセルのVBAの場合でオブジェクトの配列変数は使えますか? なにをしたいかというと、ボタンが多すぎて一つ一つにプログラム定義は面倒、そこで配列にしてまわすことにしたいのですが、エクセルで可能でしょうか。 どなたかお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。maruru01です。 コレクションというものがあります。複数のオブジェクトをコレクションにまとめ、インデックス値で識別出来ます。 以下に例を示します。 フォームにテキストコントロールが10個(Text1~Text10)あるとします。 ***宣言部に*** Private myCollect As New Collection ***例えばフォームのInitializeイベントに With myCollect .Add Item: = Text1 .Add Item: = Text2 : : .Add Item: = Text10 End With とコレクションを作成します。 そしたら、下のようにインデックス値でコントロールを識別出来ます。 'Cells(1, 1)~Cells(1, 10)にText1~Text10の値を順にセットする For i = 1 To 10 Cells(1, i) = myCollect(i).Value Next i では。
お礼
ありがとうございます。 さっそくためしてみまーす。 またご連絡差し上げます。
補足
補足欄になっちゃいましたけど、 うまくうごきましたよ。 しばらく、ウィルス関連で忙しかった ものですから、ご返事おそくなってしまって すいませんでした。 ありがとうございました。nika