ユーザーフォームで、チェックボックスとオプションボタン連動させる方法をご紹介します。
オプションボタンをグループ化して、どれか1つでもONにした場合、
該当のチェックボックスにチェックをいれるVBAを作りました。
ぜひお試しください😉
ユーザーフォーム作成
ユーザーフォームを作成します。
各オプションボタンに「GroupName」を入力します。
上の行は「GroupName」に ”1” を入力します。
中間の行は「GroupName」に ”2” を入力します。
下の行は「GroupName」に ”3” を入力します。
Excelシート
「Sheet1」にマクロボタンを設置します。
以下コードを標準モジュール「Module1」に入力して、
ボタンをクリックしたときに、ユーザーフォームが開くようにします。
Sub ボタン1_Click()
UserForm1.Show vbModeless
End Sub
マクロコードを「Module1」に入力した画面
マクロコードを入力
マクロコードを「UserForm1」に入力します。
Option Explicit
Private Sub OptionButton1_Click()
Call main
End Sub
Private Sub OptionButton2_Click()
Call main
End Sub
Private Sub OptionButton3_Click()
Call main
End Sub
Private Sub OptionButton4_Click()
Call main
End Sub
Private Sub OptionButton5_Click()
Call main
End Sub
Private Sub OptionButton6_Click()
Call main
End Sub
Private Sub OptionButton7_Click()
Call main
End Sub
Private Sub OptionButton8_Click()
Call main
End Sub
Private Sub OptionButton9_Click()
Call main
End Sub
Sub main()
Dim i As Long
'オプションボタン1~9をループ
For i = 1 To 9
'オプションボタンがクリックされたら
If Me.Controls("OptionButton" & i).Value = True Then
'チェックボックスをオンにする
Me.Controls("CheckBox" & Me.Controls("OptionButton" & i).GroupName).Value = True
End If
Next i
End Sub
マクロコードを入力する場所「UserForm1」
動作
ユーザーフォームを開く
各行のオプションボタンをどれか1つでもクリックすると、
自動でチェックボックスがONになります。
全ての行のオプションボタンをクリックすると、
すべてのチェックボックスがオンになります。
この記事がお役に立ちますと幸いです🍀
・【ExcelVBA】ユーザーフォーム作成の事例まとめ
【VBAユーザーフォーム】何ができるの?:使用例34選
...
「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説
リンク