Excel VBA 初心者の為の入門講座のホームページです

Excel VBA 入門講座


5.オプションボタン

オプションボタンは複数ある項目の中でいずれか1つを選択する場合に使用します。まず、フレームをフォームに設置し、配置したフレームの中にオプションボタンを配置することにより、各オプションボタンは1つのグループとなります。例としてフレーム、オプションボタン、コマンドボタンをフォームに配置し、どのオプションボタンが選択されているかを判定するコードを記述します。

  1. ツールボックスよりフレームのアイコンをクリックします。


  2. オプションボタン

  3. フレームを配置したい場所でドラック&ドロップします。


  4. オプションボタン

  5. フォームに配置できたらフレームを右クリックし、プロパティを選択します。


  6. オプションボタン

  7. プロパティ項目のオブジェクト名をクリックし、デフォルトでオブジェクト名(Frame1)が入力されているので変更します。(例ではfraTypeに変更)(オブジェクト名は変更しなくても良いのですが、後々チェックボックスが増えた場合区別がつきにくくなるので変更することをお勧めします)。


  8. オプションボタン

  9. Captionをクリックし、デフォルトでCaptionに"Frame1"が入力されているので変更します。(例では血液型に変更)


  10. オプションボタン

  11. 次にツールボックスよりオプションボタンのアイコンをクリックします。


  12. オプションボタン

  13. オプションボタンを配置したい場所でドラック&ドロップします。


  14. オプションボタン

  15. フォームに配置できたらオプションボタンを右クリックしプロパティを選択します。


  16. オプションボタン

  17. プロパティ項目のオブジェクト名をクリックし、デフォルトでオブジェクト名"OptionButton1"が入力されているので変更します。(例では"optTypeA"に変更)(オブジェクト名は変更しなくても良いのですが、後々オプションボタンが増えた場合区別がつきにくくなるので変更することをお勧めします。)


  18. オプションボタン

  19. Captionをクリックし、デフォルトでCaptionに"OptionButton1"が入力されているので変更します。(例ではA型に変更)


  20. オプションボタン

  21. 「6〜10」の要領で、B型、AB型、O型のオプションボタンを配置します。


  22. オプションボタン

  23. 最後にツールボックスよりコマンドボタンのアイコンをクリックします。


  24. オプションボタン

  25. コマンドボタンを配置したい場所でドラック&ドロップします。


  26. オプションボタン

  27. フォームに配置できたらコマンドボタンを右クリックしプロパティを選択します。


  28. オプションボタン

  29. プロパティ項目のオブジェクト名をクリックし、デフォルトでオブジェクト名(CommandButton1)が入力されているので変更します。(例ではcmdCheckに変更)(オブジェクト名は変更しなくても良いのですが、後々コマンドボタンが増えた場合区別がつきにくくなるので変更することをお勧めします。)


  30. オプションボタン

  31. Captionをクリックし、デフォルトでCaption(CommandButton1)が入力されているので変更します。(例ではチェックするに変更)


  32. オプションボタン

  33. コマンドボタンをクリックして選択し、右クリックしコードの表示をクリックするか、ダブルクリックします。


  34. オプションボタン

  35. オプションボタンが選択されている場合は"True"を選択していない場合は"False"をVariant型で返します。


  36. Private Sub cmdCheck_Click()〜End Sub の間に以下のコードを記述します。

    
    Private Sub cmdCheck_Click()
        Dim varTypeA As Variant
        Dim varTypeB As Variant
        Dim varTypeO As Variant
        Dim varTypeAB As Variant
        
        varTypeA = UserForm1.optTypeA.Value
        varTypeB = UserForm1.optTypeB.Value
        varTypeO = UserForm1.optTypeO.Value
        varTypeAB = UserForm1.optTypeAB.Value
        
        If varTypeA = True Then
            MsgBox "A型を選択しています。"
        ElseIf varTypeB = True Then
            MsgBox "B型を選択しています。"
        ElseIf varTypeO = True Then
            MsgBox "O型を選択しています。"
        ElseIf varTypeAB = True Then
            MsgBox "AB型を選択しています。"
        Else
            MsgBox "血液型を選択してください。"
        End If
        
    End Sub
      


  37. 実行→Sub/ユーザーフォームの実行をクリックするか〔F5〕ボタンを押します。


  38. オプションボタン

  39. 任意のオプションボタンを選択し、ボタンをクリックすると"〜型です。"とメッセージボックスが表示されます。


  40. オプションボタン

Copyright (C) pc-users.net, All Rights Reserved.