设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[基础应用] 度分秒转十进制出错问题,请高手指点

[复制链接]
跳转到指定楼层
1#
发表于 2008-11-19 21:00:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Public Function TODMS(n As Double)
Dim A As Double, B As Double, C As Double
A = Int(n)
B = Int(100 * (n - Int(n)) * 0.6) / 100
C = (100 * (n - Int(n)) * 0.6 - Int(100 * (n - Int(n)) * 0.6)) * 0.006
TODMS = A + B + C
End Function

自定义函数
将度分秒转为十进制,在60-90的10分或11分整时结果出错,如输入60.11得结果60.1833333,而不是正确结果60.1666666666请高手指点
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-11-19 21:24:23 | 只看该作者
n 的小数最长有多少位,如果不超过4位,用CUR就足够.
将ABC n 全部定义为CURRENCY试一下.

双精度的数据在计算时,会有一定的偏差.
3#
 楼主| 发表于 2008-11-19 21:40:54 | 只看该作者
不行,只有在60-90的整10分和11分出现问题,其它都对,而我用vb写出来的计算又对,在excel中计算错误
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-14 10:39 , Processed in 0.782957 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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