1、本文档下载后根据实际情况可编辑修改使用用 excel 函数 choose()、match()实现多条件计算(汕头电信 林武)在 excel 中,如果进行条件计算,一般用 if()函数,如果有多个条件,则采用多个 if()嵌套的方式实现,例如计算函数:假设 x 的值在 A1,f(x)的值在 B1,则在 B1 单元格中采用 If()函数嵌套的公式为:=if(a10,a12,0)采用 if()函数的缺点是:1、逻辑关系混乱。若干平行的条件经过嵌套以后成了若干个主从关系的条件,很难看懂。2、容易出错,如果条件越多,嵌套的 if()函数就越多,就要套越多的括号,一不小心就弄错了。能否找到一组函数,使多条
2、件能够并列显示,一目了然。可以采用 choose()和 match()相结合的公式来解决这个问题。上例在 B1单元格中填入公式:=choose(match(TRUE,choose(1,2,3,a10),0),-(a12),0,a12)解读:本文档下载后根据实际情况可编辑修改使用1、内层用 choose()构建一个数组,这个数组由 3 个值组成,按顺序分别为 a10 的逻辑值,当 a1 符合某个条件是,那个值为 TRUE,其它值为 FALSE,例如当 A1=4 时,3 个值得排列为FALSE、FALSE、TRUE;2、中间层的 match()函数用 TRUE 逻辑值来匹配内层choose()构建的数组第几个值为 TRUE,注意最后的match_type 要为 0,例如,当 A1=4 时,match()返回的值为 3,当 A1=-1 时,match()返回的值为 1;3、外层的 choose()函数利用 match()返回的值匹配第几个式子,例如当 A1=4 时,match()返回的值为 3,外层choose()函数返回的值为 A12,即 16,当 a1=-1 时,match()返回的值为 1,外层 choose()函数返回的值为-(a12),即-1。当有 4 个条件的时候,内层数组构建 4 个值,用1,2,3,4匹配,以此类推,条件再多也可以构建,而公式相当简单直观!