Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access开发平台

Access快速开发平台--数据表子窗体合计金额数据除以主窗体总金额数据计算得出费率的方法

时 间:2022-06-23 08:50:37
作 者:麥田   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:Access快速开发平台--数据表子窗体合计金额数据除以主窗体总金额数据计算得出费率的方法。
正 文:

一、学员问题描述:
企业版:浙江国辐环保科技有限公司-186期  14:13:40
请教一下,我想把数据表子窗体中发票金额输入后添加一个更新后事件,子窗体发票金额合计后除以主窗体的合同总金额,结果添加在主窗体开票率上?如下图:
点击图片查看大图

我写的代码如下,但是出错,不能得出我要的数据。
Private Sub 发票金额_AfterUpdate()
    Me.Parent.Form.发票率 = sum(Me.发票金额) / Me.Parent.Form.合同金额
End Sub

二、解决方法:
需要在发票金额输入后,加载更新后事件,自动更新发票率数据,代码如下:
Private Sub 发票金额_AfterUpdate()
    Me.Dirty = False
    Me.Parent.Form.发票率 = DSum("发票金额","合同付款详单") / Me.Parent.Form.合同金额
End Sub

测试后,上面代码可以运行,但是统计的不是当前数据表子窗体数据的合计金额,而是整个表全部数据的合计。告之表名称要写临时表的,你看一下你的临时表是什么,子窗体的数据是取临时表里面的数据,一般Access开发平台里面临时表名称为TMP_开头的。修改正确后的代码如下:
Private Sub 发票金额_AfterUpdate()
    Me.Dirty = False
    Me.Parent.Form.发票率 = DSum("发票金额","TMP_合同付款详单") / Me.Parent.Form.合同金额
End Sub

情景再现,如下图:
点击图片查看大图

实现后的完美效果,如下图:
点击图片查看大图


Access快速开发平台QQ群 (群号:321554481)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助