Office中国论坛/Access中国论坛

标题: 如何在判断文本框空值,并提示后,将焦点回到空白的文本框内? [打印本页]

作者: markatcn    时间: 2006-4-23 04:19
标题: 如何在判断文本框空值,并提示后,将焦点回到空白的文本框内?
我在用下面的VBA语句判断(成本)框内为空值,并提示后,如何将焦点回到(成本)框内,继续输入?

Private Sub 成本_LostFocus()
If IsNull(成本) = True Then
MsgBox "请填入正确的成本!"
End If
End Sub


简单问题困扰了我。

谢谢。
作者: sgrshh29    时间: 2006-4-23 04:28
用exit事件
作者: markatcn    时间: 2006-4-23 04:46
具体怎么写呢?麻烦写个例子可以吗?
作者: wuaza    时间: 2006-4-23 04:53
写在控件的更新前事件中
If IsNull(成本) = True Then
MsgBox "请填入正确的成本!"
cancel=true


作者: markatcn    时间: 2006-4-23 05:56
楼上的方法我试过了,没有用。空值也没有提示出来。
作者: 一点通    时间: 2006-4-23 06:14
Private Sub 成本_LostFocus() '失去焦点事件
If IsNull(成本) Then
    MsgBox "请填入正确的成本!"
    Me.其它文本框.SetFocus '先移到别的文本框
    Me.成本.SetFocus '然后返回到成本文本框
End If
End Sub


[此贴子已经被作者于2006-4-22 22:15:21编辑过]


作者: markatcn    时间: 2006-4-23 06:43
搞定了,呵呵。

只是奇怪为什么必须要先把焦点移到别的框里面,然后再移回来?而不能直接在失去焦点之后移回来。



谢谢楼上的大大。
作者: sgrshh29    时间: 2006-4-23 14:24
以下是引用markatcn在2006-4-22 22:43:00的发言:


搞定了,呵呵。

只是奇怪为什么必须要先把焦点移到别的框里面,然后再移回来?而不能直接在失去焦点之后移回来。

谢谢楼上的大大。



Private Sub 成本_Exit(Cancel As Integer)
If IsNull(成本) Then
    MsgBox "请填入正确的成本!"
    Cancel = True
End If
End Sub

作者: LJB    时间: 2009-7-3 20:43
这也正是我想要的,爽呀




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3