我正在创建一个会计数据库。
对于财务结果,我的表单有一个文本字段(“Previous Solde”),其中显示了前几个月的销售情况。确切的金额是通过以下查询计算出来的:
SELECT [sq Argenta Prep Vorig Saldo].Account,
Sum([sq Argenta Prep Vorig Saldo].SomVanBedrag) AS SomVanSomVanBedrag
FROM [sq Argenta Prep Vorig Saldo]
WHERE (((Year([Boekdatum]) & "/" & Month([Boekdatum]))<"2022/6"))
GROUP BY [sq Argenta Prep Vorig Saldo].Account
HAVING ((([sq Argenta Prep Vorig Saldo].Account)="BE61973184860917"));
帐号(“BE61973184860917”)和截止日期(“2022/6”)当然会替换为变量。
该查询完全按照我想要的方式执行。
当我在 Access 中运行此查询时,我得到了预期的结果。
问题是:如何将查询结果放入表单上的文本字段(Previous Solde)中?
可以简化 SQL
SELECT Sum([sq Argenta Prep Vorig Saldo].SomVanBedrag) AS SomVanSomVanBedrag
FROM [sq Argenta Prep Vorig Saldo]
WHERE Format([Boekdatum], "yyyy/mm") < "2022/06"
AND [sq Argenta Prep Vorig Saldo].Account = "BE61973184860917";
然后在文本框中使用 DLookup() 域聚合函数表达式从该查询中提取。
=DLookup("SomVanSomVanBedrag", "queryname")
或者不使用查询,而是在文本框中使用 DSum() 域聚合函数表达式。
=DSum("SomVanBedrag", "sq Argenta Prep Vorig Saldo",
"Format(Boekdatum, 'yyyy/mm') < '2022/06' AND Account = 'BE61973184860917'")
请注意月份部分中占位符零的使用。如果没有它,记录将无法正确过滤/排序 -2022/12
将小于2022/6
。这意味着 12 月运行的查询不会检索同年 2 月 - 9 月的数据。即使该值被构造为不带 / 的数字,也需要 0。如果用户从组合框中进行选择,请确保值包含表示 2 位数月份的占位符 0。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)