Office中国论坛/Access中国论坛

标题: 求助,如何在未绑定文体框输入正数自动转换为负数 [打印本页]

作者: a30088    时间: 2016-6-18 15:34
标题: 求助,如何在未绑定文体框输入正数自动转换为负数
本帖最后由 a30088 于 2016-6-18 15:36 编辑

file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\906366881\QQ\WinTemp\RichOle\6}N8%~WSWAER{T}SNEGEYW0.jpg
求助,如何在未绑定的文体框输入正数自动转换为负数 (比如输入"1"自动变为"-1")
作者: a30088    时间: 2016-6-18 15:44
也就是输入正数会自动变为负数
作者: access新新新手    时间: 2016-6-18 17:06
a30088 发表于 2016-6-18 15:44
也就是输入正数会自动变为负数

Private Sub 空差_AfterUpdate()
Me.空差 = "-" & Me.空差

End Sub

作者: a30088    时间: 2016-6-18 18:44
谢谢!我用了一个本办法

Private Sub T3_AfterUpdate()
If T3 > 0 Then
T3 = -1 * T3
End If
End Sub

作者: roych    时间: 2016-6-19 02:46
其实if都可以不写的。这是最简洁的写法:
Private Sub T3_AfterUpdate()
T3 = -Abs([T3])
End Sub
说明:
Abs取绝对值,因此这时候对于任何数,T3都转为非负值了。再加上符号,就成为相反数了。

作为论坛里为数不多的啰嗦分子,Roy还是想说两句。
-------------------------------------------------------
在文本框里显示正负又有什么用呢?数据最终还是要更新到数据表的,对不对?
因此,只需要在执行查询时设置一下就好了。例如,update 表1 set 表1.字段1=-abs([T3])
也许你的查询是追加查询,不过类似地:
Insert into 表1(字段1,字段2……字段N) select -Abs([T3]) as 字段1,字段2……字段N from 表2
作者: pyh512    时间: 2016-6-20 09:48
学习了
作者: a30088    时间: 2016-6-21 18:08
roych 发表于 2016-6-19 02:46
其实if都可以不写的。这是最简洁的写法:
Private Sub T3_AfterUpdate()
T3 = -Abs([T3])

是追加查询,谢谢roych老师!
作者: ardu95    时间: 2016-7-10 05:43
学习了        




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