设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1346|回复: 4
打印 上一主题 下一主题

[报表] 求教一个报表的现实

[复制链接]
跳转到指定楼层
1#
发表于 2010-12-13 14:41:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
制作 了一个动态交叉报表,字段是 日期,第一列的是人名。如
      2010-12-1     2010-12-2   2010-12-3
A         *
B                               #
C                                                    %

字段的日期和人名(A,B,C)都可以根据情况在报表中动态显示,但是我在这种基础上想实现一个功能是,如何判断值,如果是“*”就让报表中该文本框显示绿色,“#”就显示黄色,诸如此类的。文本框为空的就不显示颜色,求教。谢谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2010-12-13 14:49:48 | 只看该作者
在报表里写代码就可以判断了,但是需要注意的是,星号和井号属于特殊符号,我没试过。下班后再上传一个例子~~
3#
发表于 2010-12-13 14:51:57 | 只看该作者
设置条件格式
4#
 楼主| 发表于 2010-12-13 15:09:04 | 只看该作者
哦,代码我这样写的
        For i = 0 To DayCount
            Reports("TS部门人员活动时间总览报表").Controls("head" & i + 1).Caption = DateAdd("d", i, Me.查询时间从.Value)
            Reports("TS部门人员活动时间总览报表").Controls("col" & i + 1).ControlSource = DateAdd("d", i, Me.查询时间从.Value)
            If DLookup("符号", "TS部门人员活动时间总览表", "时间= #" & Me.查询时间从.Value + i & "#") = "#" Then
                Reports("TS部门人员活动时间总览报表").Controls("col" & i + 1).BackColor = RGB(0, 255, 0)
            End If
        Next
这样就无论是否A还是B还是C,统统只要有一个人员是#的话整列都是绿色了。有没办法在区分符号的时候要区分出日期和人员?
谢谢
5#
发表于 2010-12-13 19:59:01 | 只看该作者
需要看看附件~~我这里有一段代码供参考:
Private sub Rpt_Detail(Cancel As Integer,FormatCount As Integer)
’初始化,TxtQ1为值,Q为字段
Me.TxtQ1.Properties("ForeColor")=vbBlack
Me.TxtQ1.Properties("FontItkic")=False
If Me.Q1>80 Then
Me.TxtQ1.Properties("ForeColor")=vbBlue
Me.TxtQ1.Properties("FontItkic")=True
End If
End Sub
当字段比较多的时候,应该可以用For语句来获取全部字段。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-11 14:33 , Processed in 0.083798 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表