设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1925|回复: 8
打印 上一主题 下一主题

[宏/菜单/工具栏] 关于“收银”数据录入的问题。

[复制链接]
1#
发表于 2006-12-3 19:38:00 | 显示全部楼层
判断字符长度

If Len(控件名) >= 3 then

控件名=控件名/100

else

控件名=控件名

end if

(没试过,)
2#
发表于 2006-12-4 03:01:00 | 显示全部楼层
不好意思,我只是回答了2楼的问题,楼主的解决方法应该如下图的设置,如果要写代码,应该是判断倒数第3个字符是否为"."了,可是这个我不会写....你的要求真的很奇怪,为什么有时要输入19.95,显示19.95;有时要输入190,显示1.90,我想这跟个人的输入习惯有关




[此贴子已经被作者于2006-12-3 19:05:04编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
3#
发表于 2006-12-4 07:31:00 | 显示全部楼层
参考资料后按你的要求做了个,应该符合收银的输入习惯了吧,文本框什么设置都不用




[此贴子已经被作者于2006-12-3 23:54:43编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
4#
发表于 2006-12-4 07:58:00 | 显示全部楼层
里面我的说明写错了,正确如下:


Private Sub 文本0_AfterUpdate()
'输入超过3位
If Len(Me.文本0) >= 3 Then
  '倒数第3个字符不含".",例如输入2175,会显示21.75,所以除100
  If InStr(Right(Me.文本0, 3), ".") = 0 Then
    Me.文本0 = Me.文本0 / 100
    '倒数第2个字符含".",例如输入190,会显示1.9,所以末尾补"0"
    If InStr(Right(Me.文本0, 2), ".") > 0 Then
      Me.文本0 = Me.文本0 & "0"
    End If
  End If
  '字符长度为2,例如输入1500,会显示15,所以末尾补".00"
  If Len(Me.文本0) = 2 Then
    Me.文本0 = Me.文本0 & ".00"
  End If
Else
'输入不超过3位
Me.文本0 = Me.文本0 & ".00"
End If
End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-17 03:18 , Processed in 0.097991 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表