作者:乔山办公网日期:
返回目录:excel表格制作
这是因为EXCEL内部表示数据是用浮点表示的,所以在个别时候粘贴数值会显示不应该出现的“多位小zhidao数”,想避免这个情况,一般会使用round函数,如果不想使用它,还有一个方法,就是按“工具-选项”内,弹出“选项”窗口,选其中的“重新计算”选项卡,勾选里面的“以显示精度为准”,确定后,再设置单元容格保留小数位数为两位小数就行了。
Excel中如果对一列中的数据的后几位数进行累加,可以利用sum函数结合value函数和right函数组成的数组公式来实现。
软件版本:复Office2007
举例说明如下:
1.A列中有如下数据,只对每个单元格中数据的后三制位进行累加求和:
2.输入公式如下,公式解释:利用right求后三位,利用value将right取到的文本转换为数值,再利用sum求和,为了求A1:A20的和,利用数组公zhidao式:
3.Ctrl+Shift+Enter三键结束数组公式,得到结果如下:
不够11位时不保留小数点后的0?那不是更不够11位了。是说反zhidao了吧!
假设题意是:如果不够11位,小数点后补0到11位。(如果有超过11位的要另行说明处理方式)
假设原数据写在A列,从A1单元格开始的数版据,则试一下在B1单元格写入公式
=IF(A1="","",A1&IF(LEN(SUBSTITUTE(A1,".",))>11,,IF(INT(A1)=A1,".",)&REPT(0,11-LEN(SUBSTITUTE(A1,".",)))))
下拉填充公式
假设还要加一个条件:如果超过11位则去掉小数尾数权取到11位(如果有整数超过11位的要另行说明处理方式)。
则公式改成:
=IF(A1="","",IF(LEN(SUBSTITUTE(A1,".",))>11,IF((INT(A1)=A1)*(LEN(A1)>11),A1,LEFT(A1,LEN(A1)+11-LEN(SUBSTITUTE(A1,".",))))&"",A1&IF(INT(A1)=A1,".",)&REPT(0,11-LEN(SUBSTITUTE(A1,".",)))))
这是一个对小数的去尾保留问题。
也就是说如A.100/3=33.33333333333333333333333333333保留一位小数,则知0.3后面的小数不四舍五入,全部去掉。
对本问题而言,解决方法有二:
其一
设置数据格式为“数值”,小数点位数是“1”;
执行“道工具/选项/重新计算”命令,勾选“以显示精度为准”后“确定”。版
效果:A+B=366.6。
其二
假设A数在权单元格A1中,B数在单元格B1中,在C1中编辑公式
=ROUNDDOWN(SUM(A1:B1),1)
回车确认即可。
函数返回值366.6。
函数ROUNDDOWN()、SUM()可以查询粘贴函数帮助。