Office中国论坛/Access中国论坛

标题: 请教各位高手,怎样才能实现?求教!!! [打印本页]

作者: ha0148    时间: 2012-5-2 22:52
标题: 请教各位高手,怎样才能实现?求教!!!
在一个数值型的文本框里,
当输入数值为"1248.52"时,更新后数值为"1245.00".
当输入"1234.97"时更新后数值为"1230.00".
也就是说当小数点前的数值大于"5"时,更新后显示为"5".
当小数点前的数值小于"5"时,更新后显示为"0".
请高手赐教这段代码怎样写,我先在此谢过了.谢谢!!!
作者: pq318    时间: 2012-5-3 09:02
假设字段设为Lable1
If Len(Lable1)=7 Then
Select Case Mid(Lable1,6,1)
Case "Mid(Lable1,6,1)>5"
Me.Lable1=Mid(Lable1,1,3)&"5"&"."&"00"
Case "Mid(Lable1,6,1)<5"
Me.Lable1=Mid(Lable1,1,3)&"0"&"."&"00"
   End Select
ElseIf Len(Lable1)=6 Then
Select Case Mid(Lable1,5,1)
Case "Mid(Lable1,5,1)>5"
Me.Lable1=Mid(Lable1,1,2)&"5"&"."&"00"
Case "Mid(Lable1,5,1)<5"
Me.Lable1=Mid(Lable1,1,2)&"0"&"."&"00"
   End Select
ElseIf Len(Lable1)=8 Then
Select Case Mid(Lable1,7,1)
Case "Mid(Lable1,7,1)>5"
Me.Lable1=Mid(Lable1,1,4)&"5"&"."&"00"
Case "Mid(Lable1,7,1)<5"
Me.Lable1=Mid(Lable1,1,4)&"0"&"."&"00"
   End Select
End If
提个思路,没有测试,然后可以全部用If和 Else
作者: pq318    时间: 2012-5-3 09:03
也可以写出,我写的包括百位,千位以及万位的,你可以根据你的实际增减
作者: aslxt    时间: 2012-5-3 11:31
不明白你的意图,参考:
Private Sub 整数_LostFocus()
  If 整数 - Int(整数) >= 0.5 Then
    整数 = Int(整数) + 1
  Else
    整数 = Int(整数)
  End If
End Sub
其中“整数”为字段名





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