access 在文本框输入内容在按tab键触发更新后,在某些情况下需要把焦点留在这个文本框

我在更新后事件设置了把焦点留下啦,但是不行,焦点还是按tab的顺序离开了,代码如下,请高手帮忙,看看要怎样才能做到,谢谢PrivateSub学员编号_AfterUpdat... 我在更新后事件设置了把焦点留下啦,但是不行,焦点还是按tab的顺序离开了,代码如下,请高手帮忙,看看要怎样才能做到,谢谢
Private Sub 学员编号_AfterUpdate()
If IsNull(Me!学员编号) = True Then
Me.学员姓名 = Null
Me.学校 = Null
Me.年级 = Null
Me.班级 = Null
ElseIf IsNull(DLookup("[学员编号]", "学员表", "[学员编号]=[Forms]![课时消耗登记]![学员编号]")) = True Then
MsgBox "输入的教师编号不存在,请重新输入,如果是新学员请先登记学员资料", , "提示"
Me![学员编号].SetFocus
Else
Me.学员姓名 = DLookup("学员姓名", "学员表", "学员编号='" & Me.学员编号 & "'")
Me.学校 = DLookup("学校", "学员表", "学员编号='" & Me.学员编号 & "'")
Me.年级 = DLookup("年级", "学员表", "学员编号='" & Me.学员编号 & "'")
Me.班级 = DLookup("班级", "学员表", "学员编号='" & Me.学员编号 & "'")
End If
End Sub
展开
 我来答
敏锐还宁静丶行家0
2012-12-08 · TA获得超过6870个赞
知道大有可为答主
回答量:3502
采纳率:0%
帮助的人:1770万
展开全部
执行完更新代码后,才按照定义的TAB键顺序把焦点跳转到下一个控件。
所以,在执行更新代码时,当前的焦点仍然是[学员编号]。
因此,你在代码中直接用Me![学员编号].SetFocus会发生错误!
知道了错误的原因,就不难更改了。更正如下:
在 Me![学员编号].SetFocus 的上面加上一句 Me![学员姓名].SetFocus
这样,先让焦点转移到 Me![学员姓名].SetFocus ,然后再转移回当前控件即可。。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式