Office中国论坛/Access中国论坛

标题: 【新手入门】使用多个值字段的交叉表查询的小技巧 [打印本页]

作者: roych    时间: 2016-9-3 11:13
标题: 【新手入门】使用多个值字段的交叉表查询的小技巧
在交叉表查询时,只能有一个值,一个列标题,和一个或多个行标题。但实际应用中,我们可能常常需要多个值。例如,既要对各个分类进行计数(或者求和),又要显示各个分类的百分比。这时候可能就需要进行一些技巧转换了。

方法1:先用交叉表查询做出基础数据的查询,然后再对列标题增加自定义字段进行计算。
a、例如:
     物料名称:行标题
    采购处理结果:列标题
    采购处理结果:值(计数)
   将该查询命名为“结果1_中间查询”


b、以“结果1_中间查询”为数据源,创建一个查询:
     物料名称:分组(group)
     已提供:分组(group)
     未提供:分组(group)
     完成率:[已提供]/([已提供]+[未提供])          表达式(expression)
    当然,这里还没有处理空值,应该加上nz等处理下,否则部分数据无法计算。

方法2:直接在交叉表查询上处理。
       我们知道,交叉表查询允许多个行字段,因此,我们可以在这里做文章。即创建含有计算公式的表达式来作为行字段即可。

      物料名称:       行标题
      采购处理结果:列标题
      采购处理结果:值(计数)

      完成率:           Dcount("采购处理结果","物料登记表","采购处理结果='已提供' and 物料名称='"&[物料名称]&"'")/Dcount("采购处理结果","物料登记表","物料名称='"&[物料名称]&"'")          行标题             


对于数据较多时,域函数运算效率较低,不太建议使用方法2。
[attach]59874[/attach]




作者: changxing    时间: 2016-9-3 11:29
确实有这样的需求,谢谢分享
作者: tmtony    时间: 2016-9-3 11:38
好示例,谢谢分享!




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