Excel 如何在用户窗体中循环,直到做出选择或点击退出?
我有一个用户表单,客户需要在其中进行选择,因为后续代码在没有输入的情况下无法工作。因此,我检查是否进行了选择。现在,如果没有进行选择,我希望(I)显示一条错误消息,(ii)循环这个序列,直到进行选择或点击退出(退出按钮是用户表单中除“ok”之外的另一个选项) 代码如下所示。问题在于循环序列会不断显示消息框。这样,用户甚至无法返回表单并进行重新选择 有什么有用的想法吗?我相信解决办法很简单,但我的大脑现在卡住了。。。多谢各位Excel 如何在用户窗体中循环,直到做出选择或点击退出?,excel,vba,userform,Excel,Vba,Userform,我有一个用户表单,客户需要在其中进行选择,因为后续代码在没有输入的情况下无法工作。因此,我检查是否进行了选择。现在,如果没有进行选择,我希望(I)显示一条错误消息,(ii)循环这个序列,直到进行选择或点击退出(退出按钮是用户表单中除“ok”之外的另一个选项) 代码如下所示。问题在于循环序列会不断显示消息框。这样,用户甚至无法返回表单并进行重新选择 有什么有用的想法吗?我相信解决办法很简单,但我的大脑现在卡住了。。。多谢各位 Private Sub CommandButton_weiter_Cli
Private Sub CommandButton_weiter_Click()
'check if selection made
Do While True
If ComboBox_Kunde.Value = "" Or ComboBox_Lager.Value = "" Then
MsgBox "Your selection is incomplete." & vbCrLf & vbCrLf _
& "Please make a selection or exit the form.", vbCritical
End If
Loop
'selection
Dim WB As Workbook: Set WB = ActiveWorkbook
Dim WS As Worksheet: Set WS = WB.Sheets("directory")
Dim lager As Range: Set lager = WS.Range("lager")
lager.Value = ComboBox_Lager.Value
UserForm_Selection.Hide
Unload UserForm_Selection
End Sub
从评论中,OP表示“完美”(又名“工作”): 如果不满足条件,可以使用退出子项 --