具有固定行和动态列的复杂查找

Complex lookup with fixed row and dynamic column

这是我想要实现的示例:

G1中选择了

Quarter。这适用于 1, 4, 7, 10 期间,可以在 C2:C5 中找到。在 J2 中,我需要一个公式来检查 I2 是否等于前面提到的那四个值之一,并且可以在 column C 中找到。因此,我必须首先在A1:D4中查找Quarter的相应列,然后根据此检查此列是否包含I2中的值。如果是这种情况那么 I2 应该写成 J2 否则 0.

我的问题是如何在我的公式中动态引用所选时间段的相应列?对于 Quarter,我需要检查 I2 是否在 C2:C5 中,但对于 Half-Year,该列更改为 B2:B5。如果可能,我想避免该部分使用复杂的 IF 公式。

这是单元格 J2 的公式:

=IFERROR(IF(MATCH(I2,INDEX(A:D,,MATCH($G,A:D,)),),I2),)

更短的公式,没有 IF:

=VLOOKUP(I2,A:D,MATCH(G,A:D,0),0)

if :) 准备重新排列 A1:D13: