我使用以下代码(在Excel 2013 Windows 8.1中):
Private Sub txtDateBox_exit(ByVal cancel As msforms.ReturnBoolean)
If IsDate(txtDateBox.Value) = False Then
MsgBox "Enter a Valid Date, such as Jan 23, 2015"
txtDateBox.SetFocus
End If
End Sub
如果输入无效日期,则会弹出msgbox,但退出该子光标时,光标已移至我的用户窗体上的下一个文本框。如何让光标相信我,我希望它返回到txtDateBox以便用户输入有效日期?代码工作正常,它只是我遇到麻烦的光标。
当用户将无效数据放入“bin”文本框时,即光标跳转到下一个文本框(当函数返回“no”时)而不是我要求光标“SetFocus”时,会发生同样的事情。< / p>
Private Sub txtbin1_exit(ByVal cancel As msforms.ReturnBoolean)
IsItABin (val(txtbin1))
If binNumFound = "no" Then
MsgBox "Bin not found, please re-enter"
txtbin1.SetFocus
End If
End Sub
提前感谢您的帮助。
答案 0 :(得分:1)
如果您在Cancel = True
中写信,则会阻止光标离开文本框