找回密码
 立即注册

QQ登录

只需一步,快速开始

lin23611244

注册会员

3

主题

5

帖子

35

积分

注册会员

积分
35
最新发帖
lin23611244
注册会员   /  发表于:2016-6-20 17:23  /   查看:2824  /  回复:4
本帖最后由 Lenka.Guo 于 2016-6-21 09:53 编辑


设置分组,且背景颜色设计为
=IIF(RowNumber() Mod 2,"white","Gainsboro")
显示的是

我想要的是一白一灰一白一灰,怎么设计

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

4 个回复

倒序浏览
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-6-20 17:56:56
沙发
您好,
把所有数据都放在 详细数据行 而不是分组行, 这样在使用同样的公式就可以实现了:=IIF(RowNumber(“Table1”) Mod 2,"white","Gainsboro")
回复 使用道具 举报
lin23611244
注册会员   /  发表于:2016-6-20 18:00:43
板凳
详细数据行的话就没有分组行的效果了啊,把相同的只显示一个,在分组行能不能实现一白一灰啊
回复 使用道具 举报
lin23611244
注册会员   /  发表于:2016-6-20 18:00:47
地板
详细数据行的话就没有分组行的效果了啊,把相同的只显示一个,在分组行能不能实现一白一灰啊
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-6-21 09:52:34
5#
lin23611244 发表于 2016-6-20 18:00
详细数据行的话就没有分组行的效果了啊,把相同的只显示一个,在分组行能不能实现一白一灰啊

因为在使用分组时,RowNumber() 计算的是分组下所包含的所有数据行,因此行号不匹配,导致交替颜色设置出问题。
现有的解决方案,见附件报表模板(测试数据可在帖子中获得 http://gcdn.gcpowertools.com.cn/showtopic-21271-1-1.html):


实现思路:

1. 在脚本标签中添加以下代码,计数器:
  1. Private Dim Counter As Integer = 0

  2. Public Function GetCounter() As Integer
  3.         Me.Counter = Me.Counter + 1
  4.         return Me.Counter
  5. End Function
复制代码


2. 添加列并设置Visibility的hidden属性为true ,设置 Value 值为:=Code.GetCounter(),调用刚刚添加的脚本代码




3. 设置分组行的BackgroundColor 属性为:=IIF((ReportItems!TextBox12.Value )mod 2,"White","red"), TextBox12 是值为=Code.GetCounter()的单元格名称。




报表模板下载:





本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部