[英]Access Crosstab Report
我刚接触过并且有一个数据库报告问题,我似乎无法弄清(即使有几篇关于主题的帖子:/)
该数据库包含来自200多家商店的审核信息。 审核答案是文本,而不是数字,审核日期可以是任何一天。 我想创建一个报告,其中将审计问题列为行标题,最近三个审计日期列为列标题,并将审计答案列为数据。
我有一个表格,允许用户选择商店,并提供交叉表查询。 它有效,但是它不限于最近的三个日期。 用于查询的表还列出了访问次数,因此我认为我可以在访问次数最大的情况下执行某些操作,但无济于事。
不过,主要问题是现在我无法获取交叉表报表来生成任何数据。 我在尝试的那一天发现了几段示例代码,但是每段都试图生成一行和总计。 由于这些是文本数据字段,因此总计将无法使用,尽管我尝试删除了我认为合适的代码段,但仍无法生成正确的报告。
我想到尝试的第二个选择是将交叉表查询导出到excel,但我也陷入其中。
任何帮助将不胜感激。 谢谢!
根据您的技能水平,这可能很困难。 我的方法是一堆子查询,但效果不佳。 假设您的商店由StoreID唯一标识,审核日期为Audit Date,审核结果位于单个文本字段AuditResults中。 您可以自行决定细节,但这是一个粗略的概述:
将所有数据放入一个表中,每个StoreID包含1-3行(每个审计日期1行):
Qry1a
。 daterank
列。将其Qry1b
。 Qry2b
和Qry3b
。 Qry1b
, Qry2b
和Qry3b
使用内部联接,进行查询,每个StoreID最多返回3行。 使用此新表,进行新查询并按StoreID进行分组:
LastAudit: max(iif(DateRank=1,AuditResults,""))
这种方法的优点是,它可以处理少于3次审核的商店,或者如果您的商店列表在不断变化(因为storeID在任何地方都没有硬编码)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.