Access中的条件格式

时间:2010-05-25 17:10:09

标签: sql ms-access vba

我的数据表看起来像这样:

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事件,但我不确定。你可以告诉我一些代码会根据数据将指定的矩形变成红色吗?

2 个答案:

答案 0 :(得分:5)

使用条件格式,而不是代码。

答案 1 :(得分:1)

在这种情况下,我认为@ Remou的答案没有正确的理由 - 你想要显示一个x,即数据,所以你要使用带有条件格式的文本框来适当地设置背景颜色。

但是,如果您想在没有数据控件的情况下执行此操作,则可能会使用报表详细信息的Format事件。这是处理每个记录时触发的事件,它可用于运行测试,以确定要隐藏/显示哪个矩形或为矩形背景提供的颜色。

OnOpen在加载任何数据之前运行,并且在访问任何特定行之前运行OnLoad事件。因此,两者都不适合在报告的各行中格式化控件。

顺便说一下,你在报告中提到的OnLoad表明你正在使用Access 2007或更高版本(A2003及更早版本中的报告不存在该事件),你应该在你的问题中说明。