我的数据表看起来像这样:
ID name_ 1 2 3 4
1 name1 x 0 0 0
2 name2 0 x 0 0
3 name3 0 0 x 0
4 name4 0 0 0 x
我的报告上有与此数据表对应的矩形。
当报告打开时,我需要根据数据将矩形涂成红色。例如,在name1
列中x
列中有1
的{{1}}行中,我需要将与此(name1, 1)
对应的特定矩形设为红色。这是我需要的结果:
x
x
x
x
(其中x是红色的矩形)
放置此代码的最佳位置可能是报告的ON LOAD事件,但我不确定。你可以告诉我一些代码会根据数据将指定的矩形变成红色吗?
答案 0 :(得分:5)
使用条件格式,而不是代码。
答案 1 :(得分:1)
在这种情况下,我认为@ Remou的答案没有正确的理由 - 你想要显示一个x,即数据,所以你要使用带有条件格式的文本框来适当地设置背景颜色。
但是,如果您想在没有数据控件的情况下执行此操作,则可能会使用报表详细信息的Format事件。这是处理每个记录时触发的事件,它可用于运行测试,以确定要隐藏/显示哪个矩形或为矩形背景提供的颜色。
OnOpen在加载任何数据之前运行,并且在访问任何特定行之前运行OnLoad事件。因此,两者都不适合在报告的各行中格式化控件。
顺便说一下,你在报告中提到的OnLoad表明你正在使用Access 2007或更高版本(A2003及更早版本中的报告不存在该事件),你应该在你的问题中说明。