乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > excel表格中有一列数据,如何对其中几位数进行累加

excel表格中有一列数据,如何对其中几位数进行累加

作者:乔山办公网日期:

返回目录: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()可以查询粘贴函数帮助。

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网