使用条件控制源控制报表中的每条记录
Posted
技术标签:
【中文标题】使用条件控制源控制报表中的每条记录【英文标题】:Control with conditional controlsource for each record in a report 【发布时间】:2014-07-30 15:04:11 【问题描述】:我的访问报告有问题。对不起,如果它看起来微不足道,但我在这里很新......
我想要一个控件在它为空时更改它的源。为了举例说明(使用问题的精简版本),我的报告基于显示字段“id”、“name”和“instution”的查询。如果“名称”字段为空白(空),则“机构”不是。
我希望报告中每一行的控件如果不为空则显示“name”,如果“name”为空则显示“institution”。
我基本上想要一个控件根据我的记录源中的字段值显示不同的信息。但是对于每一行。
我尝试使用“on current”事件来设置控制源或值,但它不会真正起作用,因为每当我单击特定记录时,它都会更改所有记录的值。
我基本上理解报告是连续表格,并找到了一些similar issues,但解决方案不适用于我的情况。
非常感谢您的回答,如果您需要更多信息,请告诉我!任何帮助表示赞赏。
【问题讨论】:
【参考方案1】:使用查询和 IIf。
SELECT Id, IIf(Trim([Name] & "") = "", [Institution], [Name]) FROM ATable
报告基于查询。
如果:http://office.microsoft.com/en-ie/access-help/iif-function-HA001228853.aspx
【讨论】:
非常感谢,有时候去某个地方的方法太多了,我发现自己迷失了方向!我编辑了你的帖子,因为它是“IIf”而不是“Iff” 只有一个关于你的代码的问题:你为什么还要修剪 "& """?这是为了防止某种特定情况吗?一个空字符串是“”,修剪与否还是我错了? null 不等于 "",但 null & "" 等于 "",因此您涵盖了 null、零长度字符串和空格填充字符串。以上是关于使用条件控制源控制报表中的每条记录的主要内容,如果未能解决你的问题,请参考以下文章