根据单元格值填充颜色

问题描述 投票:0回答:1

我有以下代码(嵌套 IIF/Lookup)用于确定特定单元格的颜色。它适用于第一个值(已批准),但所有其他值都不会产生填充颜色。我还想指出,这些值是从下拉列表中填充的,因此不存在输入错误或大小写问题。查找值也正确。我也仔细检查过。

=IIF((Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "APPROVED"),
    IIF((Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "PENDING"),
        IIF((Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "DEAD"),
            IIF((Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "APPROVED/ORDER PLACED"),
 "Aqua",
    "Tomato"),
        "Yellow"),
            "Lime"),
Nothing)
reporting-services ssrs-2008
1个回答
0
投票

嵌套 IIF 读起来很糟糕,我总是使用

SWITCH()
,它更易于阅读和调试。

我现在无法测试,但应该没问题

=SWITCH(
    Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "APPROVED", "Lime", 
    Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "PENDING", "Yellow", 
    Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "DEAD", "Tomato", 
    Lookup(Fields!ID.Value, Fields!ParentLink139.Value, Fields!TTStatus.Value, "TrialTracker") = "APPROVED/ORDER PLACED", "Aqua", 
    True, Nothing
)

最后的

True
就像一个
ELSE

© www.soinside.com 2019 - 2024. All rights reserved.