Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 8783|回复: 6

[已解决]输入数据时如何限制小数点后面的位数

[复制链接]
发表于 2010-10-22 09:47 | 显示全部楼层 |阅读模式

请教各位老师

    我有一个困难,就是在窗体输入数据时如何限制小数点后面的位数,比如说,只能输入小数点后4位数以内的数据:12.1234 可以,12.12345不可以。

谢谢了

最佳答案
2010-10-22 10:54
Private Sub TextBox1_Change()
    With TextBox1
        If Len(.Value) > 0 Then
            If Len(.Value) - Len(Int(.Value)) > 5 Then
                .Value = WorksheetFunction.RoundDown(.Value, 4)
            End If
        End If
    End With
End Sub
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2010-10-22 09:50 | 显示全部楼层

随便输,然后用round取值不可以吗?

或者

 If Len(a) = Len(Round(a, 4)) Then

回复

使用道具 举报

 楼主| 发表于 2010-10-22 10:07 | 显示全部楼层

谢谢您Zipall 老师

我还是有些不懂,能详细些告诉我如何判断输入的小数点后的位数 ?让您见笑了

回复

使用道具 举报

发表于 2010-10-22 10:31 | 显示全部楼层

用round(    ,numbei)吧

比较好用

比如是10/3,想取4位小数,那么用公式=round(10,4)。这样出来就是3.3333

回复

使用道具 举报

 楼主| 发表于 2010-10-22 10:45 | 显示全部楼层

您误解我了

我的想发是通过用户窗体来输入数据,但是要限制,不能输入多位小数,4位以内的可以,如12.3456可以,12.34567不可以。

回复

使用道具 举报

发表于 2010-10-22 10:54 | 显示全部楼层    本楼为最佳答案   

Private Sub TextBox1_Change()
    With TextBox1
        If Len(.Value) > 0 Then
            If Len(.Value) - Len(Int(.Value)) > 5 Then
                .Value = WorksheetFunction.RoundDown(.Value, 4)
            End If
        End If
    End With
End Sub
回复

使用道具 举报

 楼主| 发表于 2010-10-22 11:06 | 显示全部楼层

多谢了amulee老师
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-16 19:54 , Processed in 0.252587 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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