Excel 查找未返回正确结果

Excel 查找未返回正确结果

我有一个简单的查找函数,用它来代替 Switch Case 语句。

以下是我想要实现的目标:

switch(F5){
    case "apple":
        return "1";
        break;
    case "pear":
        return "2";
        break;
    case "mango":
        return "3";
        break;
    case "kiwi":
        return "4";
        break;
}

以下是我的 Excel 查找函数:

=LOOKUP(F5,{"apple","pear","mango","kiwi"},{"1","2","3","4"})

问题:当 F5 等于苹果和梨时,我分别得到 1 和 2,这很好。

但是,当 F5 等于芒果或猕猴桃时,我得到 1,而不是我期望的 3 或 4。

为什么会发生这种情况?我使用的语法错误吗?上面的查找函数是否不足以代替 switch case 语句?有没有更好的方法?

附言关联讨论使用查找函数代替 switch case 语句

答案1

LOOKUP 函数要求查找范围(您的水果)按升序排列

尝试像这样改变顺序

=LOOKUP(F5,{"apple","kiwi","mango","pear"},{"1","4","3","2"})

....尽管如果 F5柠檬这样会给出 4 而不是 #N/A,因此对于精确匹配,您只能HLOOKUP像这样使用 [不需要排序]

=HLOOKUP(F5,{"apple","pear","mango","kiwi";"1","2","3","4"},2,0)

相关内容