有个excel函数公式,求高手帮忙详解

[复制链接]
查看11 | 回复5 | 2012-1-29 15:19:11 | 显示全部楼层 |阅读模式
假设A1的值是5:1)先来看这个公式ROW(INDIRECT("1:"&A1)),(比如A1的值是5),
此公式简化后即是row(1:5),计算结果是{1,2,3,4,5},如果A1是其它数值依此类推,2)于是问题中的公式简化为=IF(SUMPRODUCT((MOD(A1,{1,2,3,4,5})=0)+0)>2,"合数","质数")3)再来看这个公式:(MOD(A1,{1,2,3,4,5})=0)+0,也就是A1分别与1,2,3,4,5相除,它们的结果的余数如果等于0即是true,不等于0即是false,于是公式简化为(true,false,false,false,true)+0,再经简化即变为{1,0,0,0,1},4)于...
回复

使用道具 举报

千问 | 2012-1-29 15:19:11 | 显示全部楼层
这个公式包含多个函数,最外层是判断(IF)函数,如果SUMPRODUCT((MOD(A1,ROW(INDIRECT("1:"&A1)))=0)+0)的结果大于2,返回合数,否则返回质数.接下来分析SUMPRODUCT((MOD(A1,ROW(INDIRECT("1:"&A1)))=0)+0)嵌套了4个函数,要知道每个函数的意义才能正确分析公式的计算过程...
回复

使用道具 举报

千问 | 2012-1-29 15:19:11 | 显示全部楼层
例如A1=5INDIRECT("1:"&A1)返回引用"1:5"ROW(INDIRECT("1:"&A1))返回数组{1;2;3;4;5}MOD(A1,ROW(INDIRECT("1:"&A1)))是用1,2,3,4,5分别除5所得余数构成数组{0,1,2,1,0}MOD(A1,ROW(INDIRECT("1:"&A1)))=0返回{True...
回复

使用道具 举报

千问 | 2012-1-29 15:19:11 | 显示全部楼层
假设单元格b2:d2里是绩点3、3.5、4在e3输入=sumproduct(b$2:d$2,b3:d3)就是你要的,公式可以向下复制。绩点可以改。...
回复

使用道具 举报

千问 | 2012-1-29 15:19:11 | 显示全部楼层
楼上解释得很详细了,公式还有缺陷,1被误判为质数,可改为=TEXT(SUMPRODUCT((MOD(A1,ROW(INDIRECT("1:"&A1)))=0)+0),"[=1]非质非合;[>2]合数;质数")...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行