选中CheckBox时激活ComboBox

时间:2017-04-07 10:30:15

标签: excel vba excel-vba

我正在尝试创建UserForm,如果标记了CheckBox,则允许单击ComboBox。这是我的代码:

Private Sub ComboBox3_Change()
    If CheckBox1.Value = True Then
    ComboBox3.Enabled = False
    End If
End Sub

它不起作用,我不明白为什么。

2 个答案:

答案 0 :(得分:1)

来自你的叙述

  

如果CheckBox标记为

我假设您要对任何复选框状态更改做出反应,那么您需要一个Checkbox事件处理程序

Private Sub CheckBox1_Click()
    ComboBox3.Enabled = CheckBox1.Value
End Sub

答案 1 :(得分:0)

你应该确保在UserForm初始化时,ComboBox3被禁用,只有在单击CheckBox1时才能启用它,否则它应该保持禁用状态。

您需要在UserForm模块上放置以下两个代码。

Private Sub UserForm_Initialize()
Me.ComboBox3.Enabled = False
End Sub

Private Sub CheckBox1_Click()
If CheckBox1 Then
    Me.ComboBox3.Enabled = True
Else
    Me.ComboBox3.Enabled = False
End If
End Sub