【发布时间】:2015-04-13 13:39:43
【问题描述】:
我创建了一个 SSRS 报告,该报告将小时显示为列名,日期显示为行名。单元格值代表特定日期特定小时的销售额。
我的报告中的表格如下:
日期|第 1 小时|第 2 小时|第 3 小时|最大销售额|最小销售额
2015 年 4 月 10 日| 5 | 10 | 15 | 15 | 5 2015 年 4 月 11 日| 30 | 10 | 20 | 30 | 10
我希望单元格中有绿色背景,销售额最高,单元格背景为红色,销售额最低。所需的输出如下:
日期 |第 1 小时 |第 2 小时 |第 3 小时 |最大销售额|最小销售额
2015 年 4 月 10 日|5(红色)| 10 |15(绿色)| 15 | 5 4/11/2015|30(绿)|10(红)| 20 | 30 | 10
我已经为 GetColor 编写了如下自定义代码:
Function GetCellColor(ByVal minValue As Integer,ByVal maxValue As Integer, ByVal currentValue As Integer) As String
If currentValue = maxValue Then
return "Green"
Else If currentValue = minValue Then
return "Red"
Else
return "WhiteSmoke"
End If
End Function
根据单元格值返回颜色。我无法传递一行的 maxValue、minValue。
提前致谢。
【问题讨论】:
-
我可以回答以下问题。但由于我的声望低于 50,我无权回答。这令人沮丧。我能做些什么来回答问题? stackoverflow.com/questions/29606814/…
-
您可以通过这种方式更改文本字段的颜色:右键单击文本字段。在上下文菜单中单击
Textfield Properties。然后转到“填充”或“背景”。单击外汇按钮。在那里你可以为你的背景颜色添加一个公式。要访问您的自定义函数,请使用=code.GetCellColor()访问您的数据集,请使用Fields!currentValue.Value。顺便说一句,你也可以通过使用 IIF 函数而不是 vb 脚本来解决这个问题。 -
您应该能够回答一个问题,但不能评论。您点击的是问题下方还是您的答案部分?
-
当一个单元格要被着色时,我想从一行的列值计算最大、最小销售额并传递给函数 GetCellColor @Koryu
-
我没有尝试使用您的答案部分。刚才我已经回答了这个问题。谢谢@汉诺威拳头
标签: reporting-services ssrs-2008-r2