|
こんにちは。
まだ良く解りません。
ユーザーフォーム上に作るのかな?
昨日書いた物なので、質問の意図と違っていると思います。
シート上に作るのなら参考になれば....。
Sub コンボ作成()
Dim CombB As Object, damiycomb As Object
If Selection.Columns.Count <> 1 Then
MsgBox "1列以上は、不可。"
End
End If
On Error Resume Next
Set damiycomb = ActiveSheet.Shapes("コンボ1").OLEFormat.Object
If Err = 0 Then
ActiveSheet.Shapes("コンボ1").OLEFormat.Object.Visible = True
'End
Else
' 横位置 縦位置 幅 高
Set CombB = ActiveSheet.DropDowns.Add(323.25, 27, 80, 15) '.Select
CombB.Name = "コンボ1"
End If
Err.Clear
On Error GoTo 0
With ActiveSheet.Shapes("コンボ1").OLEFormat.Object '.Value = xlOn
.Placement = xlFreeFloating
.ListFillRange = Selection.Address
.ListIndex = 0
.LinkedCell = ""
.Display3DShading = False
.OnAction = "コンボデータ"
End With
Set CombB = Nothing
End Sub
Sub コンボデータ()
With ActiveSheet.Shapes("コンボ1").OLEFormat.Object
MsgBox .List(.ListIndex)
End With
End Sub
|
|