Office中国论坛/Access中国论坛

标题: [求助]文本框中用Dcount的问题 [打印本页]

作者: smalleaf    时间: 2007-2-7 00:19
标题: [求助]文本框中用Dcount的问题
我想对“质量”表中的数据根据“标准”表中的参数作判断。

规则:如果“质量”表中“终止点”-“起始点”〉“标准”表中的“大”,则纪录数。并把统计结果显示到文本框中。

我做的文件中,在文本框的控件来源中用:=DCount("[编号]","质量"," [质量]![终止点]-[质量]![起始点]>=[标准]![大] ")

计算不出来,

直接写:=DCount("[编号]","质量"," [质量]![终止点]-[质量]![起始点]>=‘2’ ") (其中[标准]![大]=2)

请问,文本框中的函数我该如何写呢?

请赐教。[attach]22997[/attach]

作者: hi-wzj    时间: 2007-2-7 00:38
由于聚合函数提供关于记录集(一个域)的统计信息。而您的数据已跨越了两个表,因此不能直接使用dcount函数来取得数据,这是问题的症结
作者: smalleaf    时间: 2007-2-7 00:48
请问,这时候我该怎么办呢?


作者: hi-wzj    时间: 2007-2-7 00:55
[attach]22998[/attach]

作者: hi-wzj    时间: 2007-2-7 01:08
楼上的例子也可以用表达式来完成为:

=DCount("[编号]","质量","[终止点]-[起始点]-" & DLookUp("[大]","标准") & ">=0")



由于楼主的标准表的记录将会增加,且以最后一条记录为标准,则需要做以下更改。

1、在标准表中增加一个自动编号的“id”字段。

2、表达式更改为:

=DCount("[编号]","质量","[终止点]-[起始点]-" & DLookUp("[大]","标准","[id]=" & DMax("[id]","标准")) & ">=0")
作者: smalleaf    时间: 2007-2-7 01:15
谢谢hi-wzj.
我要多次使用标准中的数据,在你的提示下,我在窗体上作了文本框,将表中的数据读入.然后再计算.
当然,让显示标准的文本框不可见就好了.
作者: smalleaf    时间: 2007-2-7 01:19
用了hi-wzj的表达式,问题解决了,相比之下,我的方法太土太笨了.

谢谢.
作者: jpj123123    时间: 2008-2-14 13:39
谢谢,学习了!!!!!!!!
作者: zqlgl    时间: 2008-3-22 00:55
用了hi-wzj的表达式,问题解决了




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3