首页 > 解决方案 > 访问 DSUM 以获取运行总计

问题描述

我正在尝试使用 DSUM 函数来获取客户支付的运行总和。我正在查看 45 个月的付款历史记录。我有一个 ID 列,它有一个唯一的数字客户 ID + 月号 /(45 +1)。因此,每个客户在其客户编号和其客户编号加 1 之间都有一个唯一编号,该编号与付款月份相关联。

我正在尝试获取一个 DSUM,以便它将等于当前月份 ID 且大于客户编号的每个 ID 相加。

如果我增加客户数量,我可以得到它,以便它可以得到所有客户的运行总和;但是,我希望在每个客户处重新开始总数。你能告诉我我需要在我的公式中调整什么吗?

CFRef 是 Ordered CF 表中客户月份参考的列。Monthpmt 是 CF 表中的总和字段。

cfr 是我尝试匹配的当前查询表中的相对客户月份字段。

PmtTot: DSum("Monthpmt","TestOrderedCF","CFRef<=" & [cfr] And "CFRef>=" & [CustNum] And "CFRef=" & [CFref])

标签: databasefunctionms-access

解决方案


串联是错误的。为什么将 CFRef 与 cfr 和 CustNum 进行比较?也许你的意思是:

PmtTot: DSum("Monthpmt", "TestOrderedCF", "cfr<=" & [cfr] & " AND CustNum=" & [CustNum] & " And CFRef=" & [CFref])

如果字段是文本类型,则需要撇号分隔符:" AND CustNum='" & [CustNum] & "' AND

可能还需要考虑年份和月份。

而不是 DSum(),可能能够通过使用报告排序和分组以及文本框 RunningSum 属性来获得所需的输出。


推荐阅读