|
こんにちは。
結構漠然としている上うまく説明できそうに無いので、こんなもので...。
ユーザーフォーム上(フォームモジュール)
Private Sub UserForm_Initialize()
Sh2C = Sheets("Sheet2").Range("C65536").End(xlUp).Address(0, 0)
ComboBox1.List = Sheets("Sheet2").Range("C3:C" & Sh2C).Value
End Sub
Private Sub ComboBox1_Change()
MsgBox ComboBox1.List(ComboBox1.ListIndex)
End Sub
フォームの方(標準モジュール)
Sub Fcomb()
With Worksheets("Sheet1").Shapes("ドロップ 1").OLEFormat.Object
.Placement = xlFreeFloating
.ListFillRange = "Sheet2!C3:" & Sheets("Sheet2").Range("C65536").End(xlUp).Address(0, 0)
.ListIndex = 0
.OnAction = "コンボチェンジ"
End With
End Sub
Sub コンボチェンジ()
With ActiveSheet.Shapes("ドロップ 1").OLEFormat.Object
MsgBox .List(.ListIndex)
End With
End Sub
ボタン&コンボともにコントロール(シートモジュール)
Private Sub CommandButton1_Click()
Application.EnableEvents = False
Sheets("Sheet1").ComboBox1.Text = Clear
'Sheets("Sheet1").ComboBox1.ListFillRange = Clear
Sh2C = Sheets("Sheet2").Range("C65536").End(xlUp).Address(0, 0)
Sheets("Sheet1").ComboBox1.ListFillRange = "Sheet2!C3:" & Sh2C
Application.EnableEvents = True
End Sub
Private Sub ComboBox1_Change()
MsgBox ComboBox1.List(ComboBox1.ListIndex)
End Sub
|
|