ユーザーフォームやActiveXコントロールにはTagプロパティという
空っぽのプロパティがあります。このプロパティに、フォームに配置された
2つのコマンドボックスのどちらがクリックされたかを判断する値を格納します。
フォームに2つのコマンドボタン「CommandButton1」「CommandButton2」
を配置します。
フォームを表示するプロシージャでは、Tagプロパティの値を参照して、
どちらのコマンドボタンがクリックされたかをメッセージボックスに表示します。
Sub ShowUserForm()
UserForm1.Show
If UserForm1.Tag = vbOK Then
MsgBox "CommandButton1がクリックされました"
ElseIf UserForm1.Tag = vbCancel Then
MsgBox "CommandButton2がクリックされました"
End If
Unload UserForm1
End Sub
コマンドボタンがクリックされた時に発生するイベントには、
次のように記述します。
Private Sub CommandButton1_Click()
Me.Tag = vbOK
Me.Hide
End Sub
Private Sub CommandButton2_Click()
Me.Tag = vbCancel
Me.Hide
End Sub
|