首页 > 解决方案 > 多个ifs和and的公式错误中的Vlookup

问题描述

我有 2 个包含多个值的表,需要从第二个表到 e 上的第一个表中获取确切的值

=VLOOKUP(A3,$I$9:$R$18,IF(D3=23800,10,IF(D3>10000,9,IF(AND(7000<D3,D3<10000),8,IF(AND(5000<D3,D3<7000),7,IF(AND(3000<D3,D3<5000),6,IF(AND(1000<D3,D3<3000,5,IF(AND(500<D3,D3<1000,4,IF(D3<500,3,2)))))))))

这是我的代码,每次尝试更正时都会出错。我怎样才能解决我的代码问题。提前致谢

标签: excelexcel-formula

解决方案


如果您像下面那样分解公式,您会注意到您缺少两个右括号:

=VLOOKUP(
  A3,
  $I$9:$R$18,
  IF(
    D3=23800,
    10,
    IF(
      D3>10000,
      9,
      IF(
        AND(7000<D3,D3<10000),
        8,
        IF(
          AND(5000<D3,D3<7000),
          7,
          IF(
            AND(3000<D3,D3<5000),
            6,
            IF(
              AND(1000<D3,D3<3000,        <= here
              5,
              IF(
                AND(500<D3,D3<1000,       <= here
                4,
                IF(
                  D3<500,
                  3,
                  2
                )
              )
            )
          )
        )
      )
    )
  )
)

我建议不要让所有嵌套IF的 s 都有一个查找表,它也可能有助于使逻辑更清晰。比如最后一个IF有:如果 D3 小于 500,那么它应该返回 3,否则返回 2。如果 D3 不小于 500,那肯定意味着它大于 500,这实际上是在之前检查过,当你有AND(500<D3,D3<1000),所以......

=VLOOKUP(D3,$G$3:$H$10,2,1)

在此处输入图像描述

在这种情况下,您的公式可能如下所示:

=VLOOKUP(A3,$I$9:$R$18,VLOOKUP(D3,$G$3:$H$10,2,1))

推荐阅读