设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 3176|回复: 16
打印 上一主题 下一主题

[其它] 有分就进到角的函数是什么呀,不是四舍五入(如2.22保留为2.3)

[复制链接]
跳转到指定楼层
1#
发表于 2006-7-13 17:20:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
见分进角的函数是什么呀

如2.22保留为2.3

12.11 保留为12.2

12.89  保留为12.9

反正有1分也进到角,不是四舍五入

[此贴子已经被作者于2006-7-13 11:04:20编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2006-7-13 22:36:00 | 只看该作者
有知道的吗
3#
发表于 2006-7-14 01:32:00 | 只看该作者
Function FixJiao(Mydata As Variant) As Variant
'================================================

'逢分进角
'用法:Fixjiao(200.33)
' andymark
' 2006-7-13
'==================================================
Dim IntFen As Integer
Dim IntJiao As Integer
Dim IntYuan As Integer
IntYuan = Fix(Mydata)

IntJiao = Int((Mydata - IntYuan) * 10)

IntFen = Int((Mydata - IntYuan - IntJiao / 10) * 100)

If IntFen > 0 Then
   FixJiao = IntYuan + (IntJiao + 1) / 10
  Else
  FixJiao = IntYuan + IntJiao / 10
End If

End Function
4#
 楼主| 发表于 2006-7-14 05:16:00 | 只看该作者
还是版主OK

最好再加个自动取保留位数的,如见角进元,像FixJiao(mydate,2) 为见厘进分,

5#
发表于 2006-7-14 05:45:00 | 只看该作者
以下是引用jicheng在2006-7-13 21:16:00的发言:


还是版主OK

最好再加个自动取保留位数的,如见角进元,像FixJiao(mydate,2) 为见厘进分,



     原理都一样的,你先试试写写,这样对你也有帮助
6#
 楼主| 发表于 2006-7-14 06:27:00 | 只看该作者
我就是不理解关系,这也是网上看到的四舍五入函数,但要换成只要有小数就进位,不知改哪个数字?

Function myRound(Number As Double, N As Integer) As String
    myRound = Format(Int(Number * (10 ^ N) + 0.5) / (10 ^ N), "0." & String(N, "0"))
End Function
是不是改0.5?请版主帮帮忙吧

7#
发表于 2006-7-14 06:38:00 | 只看该作者
加5分再四舍五入,很常用的方法嘛。
8#
发表于 2006-7-14 07:00:00 | 只看该作者


Function myRound(Number As Variant, N As Integer) As Variant

'=========================================================
'自定义小数位,小数位后的数大于零就进1
'用法: myRound(33.2120,2)
' andymark 修改于 2006-7-13

'==========================================================
Dim IntNum As Variant

IntNum = Number - Int(Number * (10 ^ N)) / (10 ^ N)

If IntNum > 0 Then
   myRound = Int(Number * (10 ^ N)) / (10 ^ N) + 1 / (10 ^ N)
Else
   myRound = Int(Number * (10 ^ N)) / (10 ^ N)
End If

myRound = Format(myRound, "0." & String(N, "0"))


End Function
9#
发表于 2006-7-14 16:42:00 | 只看该作者
不用楼上那么复杂吧
10#
 楼主| 发表于 2006-7-14 17:05:00 | 只看该作者
哪有直接应用的函数吗?

像round(x,2)这样的直接函数,有吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-9-23 05:15 , Processed in 0.103521 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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