SSRS条件格式化开关或IIF

25

我目前有一个2008年的SSRS报告,我想根据一些逻辑有条件地格式化列的背景。

我有三列,其中两列我想改变背景颜色。 列“Current Risk Level”,“Trend”,“Tolerance”。每个都包含Low,Moderate,Medium,High,Very High等行。

对于“Current Risk Level”列,我想让Low =“绿色”,Moderate =“蓝色”,Medium =“黄色”,High =“橙色”,Very High =“红色”。

对于“Tolerance”列,我想让 Low =“红色”,Moderate =“橙色”,Medium =“黄色”,High =“蓝色”,Very High =“绿色”。

我不知道如何设置SWITCH或IIF函数来完成此操作。

任何帮助将不胜感激!

1个回答

56

要动态更改文本框的颜色,请转到属性,转到字体/颜色并设置以下表达式

=SWITCH(Fields!CurrentRiskLevel.Value = "Low", "Green",
Fields!CurrentRiskLevel.Value = "Moderate", "Blue",
Fields!CurrentRiskLevel.Value = "Medium", "Yellow",
Fields!CurrentRiskLevel.Value = "High", "Orange",
Fields!CurrentRiskLevel.Value = "Very High", "Red"
)

同样的方式适用于公差

=SWITCH(Fields!Tolerance.Value = "Low", "Red",
Fields!Tolerance.Value = "Moderate", "Orange",
Fields!Tolerance.Value = "Medium", "Yellow",
Fields!Tolerance.Value = "High", "Blue",
Fields!Tolerance.Value = "Very High", "Green")

它工作得非常好!非常感谢。我花了很长时间才让它工作。 - AKudla
很高兴我能够帮到您。如果解决了您的问题,请考虑将答案标记为已接受。http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work - Anup Agrawal
如果我的表格有6行,我只需要更改第3行的单元格颜色,而不是整个表格,该怎么办?我该怎么做? 类似于= SWITCH ( IIF(Fields!Underwriter.Value="Brown, Debra" THEN Fields!PoliciesBound.Value = 0, "Tomato", Fields!PoliciesBound.Value >=1 and Fields!PoliciesBound.Value <= 5 , "Yellow", Fields!PoliciesBound.Value >=6 and Fields!PoliciesBound.Value <= 10 , "Gold", Fields!PoliciesBound.Value >= 11 and Fields!PoliciesBound.Value <= 16,"#bdff30", ) - Serdia
@Oleg 如果(RowNumber(Nothing) = 3, SWITCH(), "White") - KeithL

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接