excel 能详细讲解下这些个函数的用法吗?=IFERROR(SUMIF(index(indtrec

发布时间:2021-02-25 07:55:40

excel 能详细讲解下这些个函数的用法吗?=IFERROR(SUMIF(index(indtrect($H15&!A:AM),0,MATCH($I$15&$B$2,INDIRECT($H15$!1:1),0)),$B15,INDEX(inderict($H15&:A:AM),0,MATCH(P$2,INDIRRCT($H15&!1:1),0))),0)

网友回答

亲,题目中的公式错漏百出,到哪抄的了?
一、正确该是INDIRECT函数,题目公式中的这个函数的变种还真多indtrect、inderict、INDIRRCT,还有两处是错的:$H15$!1:1 、$H15&:!A:AM 共加起来,公式中已存在语法格式错误共五处.
二、INDEX函数 INDEX(indtrect($H15&!A:AM),0 这后面跟的这个0代表的是行,EXCEL中0行是哪一行了?最小也是第一行,没有0行的.因为题中的公式中这个行是固定的,假定从0行修改为1行,或修改为其它行也罢,总言之这样写只能是固定在某一行. 而公式中 INDEX(indtrect($H15&!A:AM) 这样写代表的是一个二维区域,即多行多列的一个大区域,如果用的是EXCEL2003代表为65536行,39列.但公式前面又固定了行数不变的,前面这样写根本是没有意义的.
后面的 MATCH($I$15&$B$2,INDIRECT($H15&!1:1),0) 这样写意思上是对的,列对数通过$I$15&$B$2的值在INDIRECT($H15&!1:1)这个区域中查找,确定它位于这个区域中的哪一列,这种是一种变量的写法.只是前面那个行实在是不行的.且INDIRECT($H15&!1:1)与INDEX(indtrect($H15&!A:AM)前者EXCEL 2003也有256列,后者固定共39列,两个区域不相等也是错的.
三、公式中用了SUMIF函数,这是条件求和函数,一般用于一个多行多列区域的条件求和,但公式用的INDEX函数,返回的值只能是一个单元格的值.公式中用了两次INDEX函数,前后总共就返回了两个单元格的值, 把前面返回单元格的值与 $B15 这个单元格的值对比,符合条件的,则对后半部份的INDEX函数返回的那个单元格的值求和(一个单元格就没什么求不求和之说了吧).
四、公式最外面套用了IFFERROR函数说明了一点,楼主用的EXCEL 是2007及以上版本(EXCEL 2003不支持这个函数).因为题目中的公式本身就存在不少错误,所以用了这个错误判断函数,即当前面公式有错误时,就返回0值,所以题目中的这公式返回的值永远都是 0
五、前面我已经按题目要求讲解了题目中的这公式的用法了,总结题目中的公式是错漏百出,而且不符合逻辑的,现在该到楼主要讲解一下这公式的主要是想实现什么样的结果,这样才能对症下药重新编写公式的了.
以上问题属网友观点,不代表本站立场,仅供参考!