我正在使用 Microsoft Access 2007,我有一个看起来像这样的查询;
PARAMETERS Identifier TEXT(255);
SELECT
DateDiff('h', (SELECT Min(SampleDateTime) FROM Specimen WHERE UserID=[Identifier]), SampleDateTime) AS ElapsedTime, Specimen.ValueA
FROM Specimen
WHERE Specimen.UserID=[Identifier]
ORDER BY Specimen.SampleDateTime
现在,如果我打开查询然后在弹出的表单中输入适当的“标识符”值,这个查询就可以正常工作。但是,我想随后使用此查询在列出所有研究的报告中生成图表。IE。报告将由每条记录 1 页组成,每页将包含 1 个图表,将上述数据绘制为折线图。
但是,如果我弹出一个图表并使用向导来创建图表,当我进入我想将报表中的当前记录中的恶魔分配给图表中的值的阶段时,我无法分配我在上面描述的“标识符”参数的报告变量。现在,通常情况下,我会构建查询以提取所有数据,然后使用图表向导在该数据上分配一个“过滤器”。但是,由于我有一个子查询,因此在这种情况下这不起作用。
我相信我正在寻找的是一种从多记录报告中的当前记录参数分配参数“标识符”的方法。
您必须尝试一些有点循环的东西,例如:
报表有一个名为 Tag 的属性
在设计视图中打开报表
打开属性表并选择“其他”选项卡
Tag 属性位于列表的底部
您可以按如下方式访问该标签:
只需将 替换为
[Identifier]
要么Reports("Report Name").Tag
Me.Tag
这样,如果您打开查询,仍然会提示您输入 UserID
当您打开报告时,设置
Me.Tag
为您想要的任何数字。你首先如何设置它?在属性表上,单击
Event Tab
。在 中OnLoad Event
,单击三个点(省略号)。菜单弹出。单击Code Builder
。VBA 打开:现在把这个设置放进去(比如用户ID来自一个表单):
试试看 !!!