设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[报表] [原创]用自编函数计算的数据,在报表中显示不正确!????

[复制链接]
跳转到指定楼层
1#
发表于 2006-8-8 20:48:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在模块里自编的函数计算出来的数据为 2357015.172

在报表某字段中引用此函数数据,所显示的数据为 2357015.250

相差太大了,不知是什么原因?求大家帮我!!!

此函数如下:


Public Function hkhj_old(fph As String, bgyf As String) As Single
    On Error GoTo errorer
   
   
    Dim a, b, c, abc As Single
   
   
    bgyf = Forms!frm打印回款!Combo0
   
    a = DSum("金额", "qu回款_以前发生额", "发票号='" & fph & "' and 月份<'" & bgyf & "'")    '以前发生额
    b = DSum("回款", "qu回款_以前回款", "发票号='" & fph & "' and 月份<'" & bgyf & "'")      '以前回款
    c = DSum("银行扣款", "qu回款_以前回款", "发票号='" & fph & "' and 月份<'" & bgyf & "'")  '以前银行扣款
   
    If IsNull(a) Or a = "" Then a = 0
    If IsNull(b) Or b = "" Then b = 0
    If IsNull(c) Or c = "" Then c = 0
   
    abc = a - b - c

    hkhj_old = Round(abc, 2)

errorer:
    Exit Function

End Function
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2006-8-8 21:25:00 | 只看该作者
在线等!急!



万分感谢!
3#
发表于 2006-8-8 21:28:00 | 只看该作者
是不是函数的数值类型设置有问题,不要设单精度型,尝试改成货币型数值。函数写的真好!努力!
4#
 楼主| 发表于 2006-8-8 21:47:00 | 只看该作者
sxczcpf

真的好感谢,果然是数据类型用的不对,改用货币类型后问题解决了!

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

本版积分规则

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

GMT+8, 2024-11-14 14:30 , Processed in 0.089600 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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