ACCESS DSUM实现按客户分组的滚动累计付款额公式调整咨询
Access DSUM 按客户维度重置滚动累计额调整方案
原有公式问题
- 条件拼接语法错误:
And关键字未纳入筛选字符串拼接逻辑,在表达式层面直接做逻辑运算,导致筛选规则完全失效,出现跨客户统计的问题 - 多余无效条件:末尾的
CFRef=[CFref]会限定仅匹配单条记录,不符合滚动累计的统计逻辑
无周期限制的同客户累计(从客户首个统计月累计到当前月)
直接筛选当前客户所有CFRef小于等于当前行cfr的记录即可,由于单个客户的CFRef均落在[CustNum, CustNum+1)区间,该条件天然实现按客户重置累计值:
PmtTot: DSum("Monthpmt", "TestOrderedCF", "CFRef <= " & [cfr] & " AND CFRef >= " & [CustNum])
45个月滚动周期限制的同客户累计
若需要严格统计最近45个月的滚动付款额,需额外限定CFRef的下限为「当前cfr往前推45个月」和「客户起始CFRef」的最大值:
PmtTot: DSum("Monthpmt", "TestOrderedCF", "CFRef <= " & [cfr] & " AND CFRef >= Max(" & [CustNum] & ", " & [cfr] & " - 45/46)")
内容的提问来源于stack exchange,提问作者pruuf
相关产品推荐
相关产品推荐

