当一个字段与另外三个不同的字段匹配时,我需要显示不同的文本颜色。
我写了下面的表达,
=IIF(
Fields!OrderBlockLetter.Value = Fields!InstitutionBlockLetter.Value, "Green",
or Fields!OrderBlockLetter.Value = Fields!DegreeBlockLetter.Value, "Orange",
or Fields!OrderBlockLetter.Value = Fields!AwardBlockLetter.Value, "Blue", "No Color")
但它不起作用。保存此代码时会出错。
我正在使用SSRS报告构建器。
答案 0 :(得分:3)
您不能将IIF与OR一起使用。如果表达式为真,则IIF仅返回一个值,如果表达式为假,则返回另一个值。您可以嵌套IIF以获得所需的结果,但使用SWITCH要简单得多。试试这个......(未经测试但应足够接近)
=SWITCH
(
Fields!OrderBlockLetter.Value = Fields!InstitutionBlockLetter.Value, "Green",
Fields!OrderBlockLetter.Value = Fields!DegreeBlockLetter.Value, "Orange",
Fields!OrderBlockLetter.Value = Fields!AwardBlockLetter.Value, "Blue",
True, "Black"
)
当switch返回第一个真实表达式时,如果所有其他表达式都失败,则最终表达式始终为True,因此将返回“Black”。
答案 1 :(得分:0)
编辑:实际上,"没有颜色"不是有效的字体。您需要选择黑色(默认颜色)或白色(以显示那里没有文字)