| 
    
     |  | こんにちは。 結構漠然としている上うまく説明できそうに無いので、こんなもので...。
 
 
 ユーザーフォーム上(フォームモジュール)
 
 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
 
 |  |