excel有没有类似switch的函数,我想进行多条件匹配

2024-12-03 08:53:31
推荐回答(5个)
回答1:

  方法一:SUMPRODUCT函数法,优点:可自动更新,如数据量大,打开文件时计算慢。缺点:仅支持数值型匹配结果,不支持文本匹配结果。
  方法二:SUMIFS函数法,优点:相比SUMPRODUCT函数简单、可自动更新,如数据量大,打开文件时计算慢。缺点:仅支持数值型匹配结果,不支持文本匹配结果。

Switch函数:
  Switch函数计算一组表达式列表的值,然后返回与表达式列表中最先为 True 的表达式所相关的 Variant 数值或表达式。
  Switch 函数的参数列表由多对表达式和数值组成。表达式是由左至右加以计算的,而数值则会在第一个相关的表达式为 True 时返回。如果其中有部分不成对,则会产生一个运行错误。如果 expr-1 为 True则 Switch 返回 value-1,如果 expr-1 为 False,但 expr-2 为 True,则 Switch 返回 value-2,以此类推。
  当没有一个表达式为 True,或者第一个为 True 的表达式的对应值为 Null时,Switch 会返回一个Null值。
  虽然它只返回其中的一个值,但是 Switch会计算所有的表达式。因此应该注意到其所产生的副作用。例如,只要其中一个表达式导致被零除错误,则运行就会发生错误。

回答2:

刚回答的问题,应该与你说的类似:
问题:A1数值0~7时,B1自动显示为1,8-14时B1为2,15-21时B1为3,22-28时B1为4,29-35时B1为5,36-42时B1为6,43-49时B1为7

我的回答:
未说50以上为多少,假设为8
=LOOKUP(A1,{0,8,15,22,29,36,43,50},{1,2,3,4,5,6,7,8})

回答3:

=IFERROR(INDEX({0.4,0.7,0.95,1.2,1.7,2.2,1},MATCH(C77,{"D700","D1000","D1250","D1500","D2000","D2500","矩形井"})),0)

回答4:

??

回答5:

用LOOKUP函数,或者INDEX配合MATCH。方法多种,可根据具体情况采取不同的对策。