作业帮 > 综合 > 作业

EXCEL中的这个公式是怎么计算的?

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/04/29 12:06:43
EXCEL中的这个公式是怎么计算的?

M32中的公式如下:
=IF(IF((SUMPRODUCT(ISNUMBER(FIND(MID(G32,{1},1),J32))*1)),"1","0")+IF((SUMPRODUCT(ISNUMBER(FIND(MID(H32,{1},1),K32))*1)),"1","0")+IF((SUMPRODUCT(ISNUMBER(FIND(MID(I32,{1},1),L32))*1)),"1","0")=2,"错","中"))
 
请问这窜公式是怎么计算的,我实在是没看懂SUMPRODUCT、ISNUMBER、FIND三个函数的用法!请大侠们帮帮忙.
希望能给出每一步的计算过程.是如何得出结果为“错”的!
EXCEL中的这个公式是怎么计算的?
M32公式改为这样下拉填充就行了:=IF(SUMPRODUCT(1*ISNUMBER(FIND(G32:I32,J32:L32)))=2,"错","中")
或者用这公式也行,但这是数组公式:=IF(COUNT(FIND(G32:I32,J32:L32))=2,"错","中")
FIND(G32:I32,J32:L32)这部份如果找到的就会返回一个数字,否则就返回一个错误值#VALUE!
ISNUMBER(FIND.)外面套一个ISNUMBER函数,判断FIND返回的是不是数字,如果是数字就返回一个TURE值,否则就返回FALSE值.EXCEL中TRUE当1运算,FALSE当0运算.
SUMPRODUCT(1*ISNUMBER(.))由于SUMPRODUCT函数是不能直接对TRUE和FALSE运算的,需要转为为1和0,所以分别用1*TURE和FALSE,得到1和0,这样再用SUMPRODUCT求和就行了.

再问: 公式是不是这样计算出来的:
对G32、H32、I32的值在对应的J32、K32、L32中找相应的字符,能找到两个,就为"错",否则为"中"

是这样吗?
再答: 完全正确,就是这样了。
再问: 哦哦,明白了,谢谢
再答: 以上公式还有一个要注意的地方,如果找到3个时,公式显示的是中。

如果公式的意思是,找到大于1个时,就显示错的,公式需要改为:
=IF(SUMPRODUCT(1*ISNUMBER(FIND(G32:I32,J32:L32)))>1,"错","中")