有人帮我完整解释一下这个EXCEL是什么意思吗?尤其是4^8这里。

=INDEX(B:B,SMALL(IF(MATCH($B$5:$B$30&$C$5:$C$30&$D$5:$D$30,$B$5:$B$30&$C$5:$C$30&$D$5:$D$30,)=ROW(A$5:A$30)-4,ROW(A$5:A$30),4^8),ROW(A1)))&""
B,C,D三列的5-30行值如果相等的话则等于对应的列,否则显示为最大值(4^8次方就最大值)。
small函数然后在这个区域里调取最小的值。
然后index显示具体的值……

分析这一个长公式,我试下用由外而内分拆公式,再由内而外逐层分析吧。
(如果有具体的数据,分析起来方便一些,否则解释起来有点罗嗦)

一、将公式由外而内分拆为如下四层:
1、公式最终返回值 =INDEX(B:B,B列某行)&""

2、B列某行 =SMALL(一列行号,ROW(A1))

3、一列行号 =IF(条件,ROW(A$5:A$30),4^8)

4、条件:MATCH($B$5:$B$30&$C$5:$C$30&$D$5:$D$30,$B$5:$B$30&$C$5:$C$30&$D$5:$D$30,)=ROW(A$5:A$30)-4

二、由内而外对上述分拆的公式分析如下:
1、最内一层的条件,我只对等号前的部分分析一下,等号后面的部分不难理解了。

等号前的部分是:
MATCH($B$5:$B$30&$C$5:$C$30&$D$5:$D$30,$B$5:$B$30&$C$5:$C$30&$D$5:$D$30,)

对照MATCH函数的语法: MATCH(查找的值,查找的范围,查找方式)

查找的值为:$B$5:$B$30&$C$5:$C$30&$D$5:$D$30
即第5行查找的值为:B5&C5&D5
第6行查找的值为:B6&C6&D6
……
第30行查找的值为:B30&C30&D30

查找的范围是:$B$5:$B$30&$C$5:$C$30&$D$5:$D$30
这部分如果有具体数据就好解释一些,你自己参照第一个参数理解一下吧。

查找方式是0(在函数的参数中,0或FALSE往往可以省略,即只用逗号分隔参数,不必再写上0或FALSE)

2、内面第二层,是通过IF函数判断,如果符号条件,则返回对应的行号,对满足条件的行,则返回65536
这里4^8,就是65536,也就是03版Excel的最大行数

最外面的两层,经过分拆后应该容易理解,不再累赘。

另外,公式最外层INDEX函数后面的&"",是为了保证公式返回文本值,例如如果INDEX函数提取的是一个空单元格,后面如果不加&"",则公式返回0,加了&"",则返回空文本""。
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-16
EXCEL只是微软公司做表格的应用软件。
第2个回答  2013-08-16
应该是4的8次方。
相似回答