我有一个检查时间输入的小程序......即,如果用户输入“8”,它会将其更改为 08:00 等......效果很好。
现在我想我会很聪明,并确保用户输入最多 4 个数字,如果没有,则会弹出一个 msgbox。到目前为止很容易,但我到底怎么把他带回文本框,这样他才能更正他的输入?我尝试了 .Setfocus 但没有任何反应?有任何想法吗 ?
Private Sub ZB_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Len(ZB) = 2 Then
ZB = ZB & ":00"
ElseIf Len(ZB) = 1 Then
ZB = "0" & ZB & ":00"
ElseIf Len(ZB) = 4 Then
ZB = Left(ZB, 2) & ":" & Right(ZB, 2)
ElseIf Len(ZB) = 3 Then
ZB = Left(ZB, 1) & ":" & Right(ZB, 2)
ElseIf Len(ZB) > 4 Then
MsgBox "What you trying to say ???"
ZB.SetFocus
Else
End If
End Sub