【问题标题】:Initializing a userform with preset values?用预设值初始化用户表单?
【发布时间】:2014-09-20 19:17:42
【问题描述】:

使用 VBA for excel 2010。这是我第一次使用 VBA 和用户窗体。现在我有一个准系统用户表单“UserForm1”试图解决这个问题。它由属于 GroupName“WK”的两个单选按钮“OptionButton1”和“OptionButton2”以及两个文本框“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”为假。如果我单击它,则会显示消息框并且文本框会显示文本。它只是在启动时不会这样做。我已经尝试进入 optionbutton 属性并将 'value' 设置为 true,这使其在启动时为 true,但消息框仍然不显示并且文本框为空白,直到我点击它。 p>

...请帮忙。谢谢。

【问题讨论】:

  • 在类初始化Me.OptionButton1.Value = True 行之后,只需调用您的点击子 - 即OptionButton1_Click。就是这样;)
  • 感谢 Cor_Blimey!效果很好。我发誓这种语言比其他任何语言都有更多可能的命令。

标签: vba excel radio-button initialization userform


【解决方案1】:

我想通了。

我突然发现了下拉菜单。显然我应该把 Userform_Initialize() 而不是 UserForm1_Initialize(),而不是 OptionButton1_Click() 我把代码放到 OptionButton1_Change() 中,它运行了随后的初始化序列。

你们这些家伙/女孩真是棒极了。我从阅读你的帖子中学到了一切。谢谢!

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多