VBA多选项对话框输出



>我创建了一个包含多个选项的用户表单,现在我希望用户选择的选项显示在调用用户表单的按钮下的标签中。我更改了按钮下方文本框中的标题,使其类似于应该发生的情况

但是我的选择不起作用。我是否应该将输出保存在全局变量中,然后回调它以更改标签,如果是这样,我该怎么做?或者是否可以只在用户窗体中调用选择?

我尝试运行的代码是调用消息框,然后更改文本框,该文本框实际上是一个名为"labelpage"的标签

Private Sub CommandButton1_Click()
UserForm1.Show
If UserForm1.OptionButton1 = True Then LabelPage.Caption = "Company Restricted"
If UserForm1.OptionButton2 = True Then LabelPage.Caption = "Strictly Confidential"
If UserForm1.OptionButton2 = True Then LabelPage.Caption = "Public Information (does not need to be marked)"
End Sub

我每次单击按钮也有这个,只是为了在用户表单代码中选择后关闭它们。

Private Sub OptionButton1_Click()
    OptionButton1.Value = True
    Unload Me
End Sub
Private Sub OptionButton2_Click()
    OptionButton2.Value = True
    Unload Me
End Sub
Private Sub OptionButton3_Click()
    OptionButton3.Value = True
    Unload Me
End Sub

只是语法上的一个小错误或类似的东西,还是完全错误?提前感谢您的帮助。

问题是您正在卸载用户窗体,这意味着您无法使用控件。 解决方案是隐藏用户窗体:

Private Sub OptionButton1_Click()
    Hide
End Sub
Private Sub OptionButton2_Click()
    Hide
End Sub
Private Sub OptionButton3_Click()
    Hide
End Sub

最新更新