• ベストアンサー
  • すぐに回答を!

イメージコントロールの代入を簡単にしたい。

  • 質問No.5620326
  • 閲覧数76
  • ありがとう数1
  • 回答数1

お礼率 30% (85/276)

エクセル2003のVBAで次のイメージコントロールの代入処理をループや配列などを使って簡単にしたいのですが出来ますでしょうか?

Dim photo As New Collection
photo.Add Item:=Image1
photo.Add Item:=Image2
photo.Add Item:=Image3
photo.Add Item:=Image4
photo.Add Item:=Image5
photo.Add Item:=Image6
photo.Add Item:=Image7
photo.Add Item:=Image8
photo.Add Item:=Image9
photo.Add Item:=Image10・・・以下は~image26まで続いています。以下省略。image1~26はイメージコントロールです。

質問者が選んだベストアンサー

  • 回答No.1
  • ベストアンサー

ベストアンサー率 57% (3570/6233)

こんばんは。

以下、Me は、それぞれ、このようになります。
ローカルモジュールでなかったら、それぞの親オブジェクトを指定してください。
ところで、このようなコードを作るというのは、インスタンスでも設けるのですか?
一般的には、Collection で、まとめるのは必要ないような気がします。配列は可能ですが、使わない方が良いです。

'-------------------------------------------
'UserForm 上 (Me = UserForm)
Dim photo As Collection
Set photo = New Collection
Dim i As Long
For i = 1 To 26
 photo.Add Me.Controls("Image" & i)
Next
'-------------------------------------------
'ワークシート上 (Me = Worksheet)
Dim i As Long
Dim photo As Collection
Set photo = New Collection
For i = 1 To 26
photo.Add Me.OLEObjects("image" & i)
Next i
'-------------------------------------------
お礼コメント
w_kiyo123

お礼率 30% (85/276)

ご回答ありがとうございます。
教えられたコードを試したらうまく動きました!
ありがとうございました!
投稿日時:2010/01/25 14:17
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ