以前就有不少人问我要过试验上经常用到的奇进偶不进公式,方法比较多。今天又有人提到,花了点时间编了一个自以为比较简洁而且所有公式非常简单的方法,不知效果如何,请大家指教。
假如要进行奇进偶不进四舍五入的单元格为“A1",需要保留两位小数,折计算公式:
=IF(AND(INT(100*A1)-2*INT(A1*100/2)=0,(A1*100-INT(A1*100))<0.6),INT(A1*100)/100,ROUND(A1,2))
如果需要保留3位小数,则把式中的100改成1000,同事更改最后的“ROUND(A2,2))”为“ROUND(A1,3))”即可。
=IF(AND(INT(1000*A1)-2*INT(A1*1000/2)=0,(A1*1000-INT(A1*1000))<0.6),INT(A1*1000)/1000,ROUND(A1,3))
如果需要保留N位小数,则把式中的100改成1后面加N个0,同事更改最后部位为“ROUND(A2,N))”即可。
=IF(AND(INT(10^N*A1)-2*INT(A1*10^N/2)=0,(A1*10^N-INT(A1*10^N))<0.6),INT(A1*10^N)/10^N,ROUND(A1,N))
另外还可以用很多别的办法实现
比如:
ROUND(A1/(IF(--(RIGHT(A1/10^(INT(LOG(ABS(A1)))-2),2))=0.5,2,1)*SIGN(A1)*10^(INT(LOG(ABS(A1)))-2)),0)*IF(--(RIGHT(A1/10^(INT(LOG(ABS(A1)))-2),2))=0.5,2,1)*SIGN(A1)*10^(INT(LOG(ABS(A1)))-2)
大家还有什么好办法欢迎交流 |
|