You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Access 2016中基于双条件的DSUM函数使用问题求助

解决Access窗体DSum汇总控件为空的问题

问题根源分析

你当前的DSum公式存在三个关键错误:

  • 条件语句未关联有效匹配逻辑,只是判断空字符串,导致无匹配记录
  • 带连字符的字段名(如Column-A、Column-B、Column-Amounts)未用方括号包裹,Access会将连字符识别为减号运算符,引发语法错误
  • 公式中误用字段名Amounts,实际目标字段是Column-Amounts

修正后的公式

情况1:匹配表中Column-A与Column-B值相等的记录

如果要汇总tbl-Reserves表中所有Column-A等于Column-B且Column-Amounts不为0的记录总和,公式应为:

=Nz(DSum("[Column-Amounts]", "tbl-Reserves", "[Column-A] = [Column-B] AND [Column-Amounts] <> 0"), 0)

情况2:匹配当前窗体记录的Column-A/Column-B值与表中对应字段相等的记录

如果要基于窗体当前记录的Column-A/Column-B值(假设窗体数据源包含这两个字段),汇总表中对应匹配的记录总和,公式调整为:

=Nz(DSum("[Column-Amounts]", "tbl-Reserves", "[Column-A] = " & [Column-A] & " AND [Column-B] = " & [Column-B] & " AND [Column-Amounts] <> 0"), 0)

注:如果Column-A/Column-B是文本类型,需在值前后添加单引号:"[Column-A] = '" & [Column-A] & "'"

额外验证步骤

  • 确认tbl-Reserves表中确实存在Column-A等于Column-B且Column-Amounts不为0的记录,否则Nz函数会返回0(避免控件显示为空)
  • 检查字段名拼写完全一致,包括大小写和特殊符号

内容的提问来源于stack exchange,提问作者Datamint

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 20:12:06