プロが教えるわが家の防犯対策術!

エクセルのユーザーフォームでの質問です。

コンボボックスの項目についてsheet2のB2~B10を選択したいのですが、このユーザーフォームはsheet1で使うもので、プロパティのrowsource欄にセルを選択できません(やり方が分かりません)。

どう入力したら別シートのセルをコンボボックスに反映出来るのでしょうか??

A 回答 (2件)

プロパティから出なく


コードで設定してはどうでしょう。
Private Sub UserForm_Initialize()
Dim myDRange As String
myDRange = "Sheet2!B2:B10"
Me.ComboBox1.RowSource = myDRange
If Worksheets("Sheet2").Range("B2").Value = "" Then
   Me.ComboBox1.RowSource = ""
End If
End Sub
    • good
    • 0
この回答へのお礼

出来ました!!
素人には分からない式ですね。

どうもありがとうございました。

お礼日時:2007/03/18 16:12

たとえば、下記の様な例になります。



With ComboBox1
.AddItem Sheets("Sheet1").Range("a1").Value
.AddItem Sheets("Sheet2").Range("a1").Value
End With

この場合は、Sheet1のA1とSheet2のA1をコンボボックスのアイテムにする場合の記述です。

ループを利用して、多くの項目を追加する事が可能です。
    • good
    • 0
この回答へのお礼

簡素化されていて見やすい式ですね。
マクロを使いこなせていれば使いやすいのかも。

どうもありがとうございました。

お礼日時:2007/03/18 16:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!