Office中国论坛/Access中国论坛

标题: 文本框的change事件中出现的这个小问题(如何直接endif)该怎么解决? [打印本页]

作者: rujd    时间: 2019-3-20 10:36
标题: 文本框的change事件中出现的这个小问题(如何直接endif)该怎么解决?
01  Private Sub 数量_Change()
02       If IsNumeric(Me.数量.Text) = False  Then
03          Me.数量.Text = 1
04       End If
05       代码1
06  End Sub

执行的时候,当IsNumeric(Me.数量.Text) = False时,代码执行的顺序是02-03-01-02-03-04-05-06-04-05-06
注意红色的部分,结果就是05行的代码1被重复执行了1次,原因应该是当IsNumeric(Me.数量.Text) = False时,执行了Me.数量.Text = 1,导致if没运行完就又触发了Private Sub 数量_Change()事件,当Private Sub 数量_Change()事件完成后又要去执行前面没执行完的if事件。
请问下各位,这里有什么办法能避免05行的代码1被执行2次吗?也就是说在执行完Me.数量.Text = 1后能直接endif,而不是再次触发Private Sub 数量_Change()事件

作者: admin    时间: 2019-3-20 11:43
要看你05是什么代码啊。上传附件。
作者: rujd    时间: 2019-3-22 08:21
admin 发表于 2019-3-20 11:43
要看你05是什么代码啊。上传附件。

就是一个简单的由Me.数量.Text计算另一个变量值的代码




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