【ユーザーフォーム】コントロールの有効無効を切替:VBA自動化

ExcelVBA-ユーザーフォームコントロール有効無効切替-アイキャッチ エクセルマクロで効率化する

ユーザーフォームで、コントロールの有効無効を切り替えるマクロコードをご紹介します。

オプションボタンを選択しない限り、

リストボックスをクリックできないようにします。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

ユーザーフォームにマクロコードを入力

「UserForm1」にマクロコードを入力します。


Private Sub UserForm_Initialize()

    With UserForm1.ListBox1
    
        'リストボックスを選択できないように設定
        .Enabled = False
        
        'リストボックスをグレーアウト
        .BackColor = &HD3D3D3
        .ForeColor = &H696969
        
        'リストボックスに値表示
        .AddItem "りんご"
        .AddItem "いちご"
        .AddItem "もも"
    End With

End Sub

Private Sub OptionButton1_Click()

    With UserForm1.ListBox1
        If OptionButton1.Value = True Then
        
            'リストボックスをロック解除
            .Enabled = True
            
            'リストボックスの背景色と文字色変更
            .BackColor = &HFFFFFF
            .ForeColor = &H0
        End If
    End With

End Sub

Private Sub OptionButton2_Click()

    With UserForm1.ListBox1
        If OptionButton2.Value = True Then
        
            'リストボックスを有効に切替
            .Enabled = True
            
            'リストボックスの背景色と文字色変更
            .BackColor = &HFFFFFF
            .ForeColor = &H0
        End If
    End With

End Sub

 

動作

ユーザーフォームを開いたとき、ListBoxを無効(グレーアウト)にしてクリック不可とします。

オプションボタンを選択すると、ListBoxを有効にしてクリックできるようにします。


 
この記事がお役に立ちますと幸いです。
 

【VBAユーザーフォーム】何ができるの?:具体的な使用例19選
...

 

「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説