通过公式选择命名范围

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

所以我有这个公式:

enter image description here

在较高层面上,公式如下:

If [Dynamic Array #1] = False, 0,

    Index(
        If [Dynamic Array #2] = 1, Named Range A, Named Range B    <-- Problem exists here
        Row,
        Column
    )

有一个包含 1 和 0 的动态数组,公式应该使用它来选择要索引的命名范围。

但公式是始终索引命名范围A,而从不索引命名范围B,即使该值意味着它应该是这样。

为什么?

excel switch-statement dynamic-arrays named-ranges
1个回答
0
投票

该公式的构造方式被 Excel 解释为“数组的数组”(将值数组传递给两个嵌套 IF 函数的 逻辑_test 参数)。

作为解决方法,请尝试使用 MAP 函数一起迭代数组并单独处理每个值:

=MAP(IA10#, IF10#, HT10#, HX10#,
    LAMBDA(u,x,r,c,
        IF(u=FALSE, 0, INDEX(IF(x=1, RateCard_Small_Parcel_Ground_LBS_Reynosa, Old_RateCard_Small_Parcel_Ground_LBS_Reynosa), r+1, c+1))
    )
)
© www.soinside.com 2019 - 2024. All rights reserved.