Tagプロパティを使ってフォームを表示したプロシージャへ値を返す
 ユーザーフォームや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

Excel97



戻る


Excel Word Access VBA! モーグ