监理检测网论坛

注册

 

发新话题 回复该主题

[交流] 也谈数值修约 [复制链接]

1#
近来见论坛上有朋友发关于数值修约D贴,好心也上来补充补充,希望对各位有所帮助。pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
以修约至0.01为例说明如下:=IF(INT(AVERAGE(A1:A2)*100)/100=AVERAGE(A1:A2),AVERAGE(A1:A2),IF(MOD(INT(AVERAGE(A1:A2)*100),2)=0,ROUND(INT(AVERAGE(A1:A2)*100)/100,2),ROUND(INT(AVERAGE(A1:A2)*100)/100+0.01,2)))pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
释译:pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
INT(AVERAGE(A1:A2)*100)/100=AVERAGE(A1:A2):此部分判断两单元格中平均值是否存在均值与取整后至0.01是否相等。也就是说,如果均值结果小数位数有效数字正好有两位,则不需考虑修约问题;如果不是,则为考虑对象。pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
MOD(INT(AVERAGE(A1:A2)*100),2)=0:此部分判断0.01位数为奇偶,得0为偶。pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
ROUND(INT(AVERAGE(A1:A2)*100)/100,2):此部分为对0.01位后小数部分进行舍去,即表示0.01位为偶数。pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
ROUND(INT(AVERAGE(A1:A2)*100)/100+0.01,2):此部分为对0.01位后小数部分进一位,即表示0.01位为奇数。pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
值得注意的是,如果要保留至0.1位,则相应的100改为10,0.01改为0.1,以此类推即可。pðH/㆝`bbs.3c3t.com2 «›¬Eç™s
附件:您需要登录才可以下载或查看附件。没有帐号? 注册
分享 转发
TOP
发主话题 回复该主题