如何更改组中SSRS中每两行的背景颜色

How to change background color for each two rows in SSRS in a group

如何编写表达式以更改 SSRS 中每两行的背景颜色? 我需要这样的东西:

我试过表达

=IIF(Fields!Type.Value="2016 Submitted" , "LightBlue",
IIF(Fields!Type.Value="2015 Submitted" , "LightBlue",
 Nothing))

但是因为有些月份没有值,所以它看起来像这样:

如果我尝试这个表达式,我会得到以下结果:

=IIF(RunningValue(Fields!Count.Value, CountDistinct, Nothing) MOD 2 = 1, "White", "PaleTurquoise")

Dance-Henry 我试过你的代码

=IIF(RowNumber(Nothing) Mod 4 = 1 or RowNumber(Nothing) Mod 4 = 2, "Aqua","White")

这就是我得到的:

如果您可以添加一个隐藏的 color_group 列并在每个要更改颜色的点用一个新数字填充它(在您的情况下为 1,1,2,2,3,3,4 ,4) 然后你可以使用类似下面的东西(适用于不同规模的群体):

IIF(RunningValue(Fields!color_group.Value, CountDistinct, Nothing) MOD 2 = 1, "White", "PaleTurquoise")

您可以 select 设计窗格中的行并按 F4 将 属性 BackgroundColor 设置为 =IIF(RowNumber(Nothing) Mod 4 = 1 or RowNumber(Nothing) Mod 4 = 2, "Aqua","White")

附上截图。相应地做。

结果是这样的

经过 link https://blogs.msdn.microsoft.com/chrishays/2004/08/30/green-bar-matrix/

经过测试,它适用于 Matrix 的绿条效果。我会在这里一步一步展示,以供以后参考。

第 1 步:创建矩阵并在矩阵最内层的行分组下再添加一列。 (ColorNameTextbox 这里)

步骤 2: Select ColorNameTextbox 的文本框并按 F4 设置 BackgroundColor 属性如下所示 =Value

步骤 3: Select 矩阵单元格的文本框,然后按 F4 设置 BackgroundColor 属性 为 =ReportItems!ColorNameTextbox.Value 如下所示。

第4步:将内分组header(ColorNameTextbox)拖动到尽可能窄的位置。

步骤 5:预览窗格以检查结果。

我有一个类似的问题,我无法提出交替行,因为我的数据有列组,RowNumber(Nothing) 方法失败。从这里的所有其他帖子中学习这就是我逐步解决它的方法。

  1. 我在报表属性中添加了以下代码,它提供了一个函数来获取行号,每次调用它。每次调用该函数时都会增加行计数。 >>右键单击报告周围的 space >> 属性 >> 代码。或者在选择报告时转到代码属性 Window。

添加以下行:

 
     Public  Row_Sum As Decimal = 0
     Public Function Lookup_Sum( ) As integer
       Row_Sum = Row_Sum + 1 
       Return Row_Sum
     End Function
  1. 我在名为编号的行的开头添加了一个新列,它将计算并显示该行number.Right单击第一列>>插入列>>内部组-左。

  1. 在新报表的表达式中添加这行代码。还要记下将具有编号值的文本框的名称。下一步将需要它。在我的例子中,TextBox 被称为 TextBox6(属性 Window)。 >>右键单击单元格>>表达式。

添加代码:

=Code.Lookup_Sum()
  1. 我突出显示了整行并转到背景 属性 并添加了以下表达式来计算行号。

添加代码(TextBox6是上面记下的Textbox名称):

=IIF(VAL(ReportItems!Textbox6.Value) MOD 2, "LIGHTBLUE", "WHITE")