使用预设值初始化用户表单?

时间:2014-09-20 19:17:43

标签: vba excel-vba radio-button initialization userform

在VBA中为excel 2010工作。这是我第一次使用VBA和用户表单。现在我有一个准系统userform" UserForm1"试图解决这个问题。它由两个单选按钮和#34; OptionButton1"和" OptionButton2"属于GroupName" WK"和两个文本框" TextBox1"和" TextBox2"。

当我运行用户表单时,我想要" OptionButton1"要被选中以及后续的if / then语句要运行。但是,现在我无法做到这一点。我的代码:

Public Sub UserForm1_Initialize()
UserForm1.Show
Me.OptionButton1.Value = False
Me.OptionButton1.Value = True
MsgBox ("dia locked")
Me.TextBox1.Value = "blah"
End Sub

Public Sub UserForm1_Activate()

End Sub

Public Sub OptionButton1_Click()

If Me.OptionButton1.Value = True Then
MsgBox ("dia locked")
Me.TextBox1.Value = "blah"
End If

End Sub

Private Sub TextBox1_Change()

End Sub

当我运行表单时,没有任何反应," OptionButton1"是假的。如果单击它,将显示消息框,文本框将显示文本。它只是在启动时没有做到。我尝试进入选项按钮属性并设置' value'为true,这在启动时确实如此,但消息框仍然无法显示,文本框为空白,直到我点击它。

...请帮忙。谢谢。

1 个答案:

答案 0 :(得分:1)

我明白了。

我突然发现了下拉菜单。显然我应该放置Userform_Initialize()而不是UserForm1_Initialize(),而不是OptionButton1_Click()我将代码放入OptionButton1_Change(),后者运行后续的初始化序列。

你们/ gals很棒。我从阅读你的线程中学到了一切。谢谢!