excel单列空格自动求和,用什么函数/

excel用什么函数自动计算下面0和0之间的空格数,比如第一列里面,两个0和第三个0之间有3个空格,第三个0和第四个0之间有7个空格,如何操作呢,那位大神知道啊
换一种算法,只要用函数自动计算A2:B16每列相邻数字之和就可以了,效果看右边,不过位置一定要正确,空的几格还是几格。颜色不用管,是为了方便效果我填上去的。那位大神知道计算结果和方法请告知谢谢

  因为在公式中用IF判断数字0时,空格也是当0的,所以要对原数据做楼主补充类似的处理,即空格处填充1或别的内容。本示例中填充为一个空格,这样看上去就还是空白。快速填充的方法:选择要填充的区域,按Ctrl+G,定位——空值,输入:空格,按Ctrl+回车键。并且注意在每列最上面的0上面的空白单元格中也要手工输入一个空格,否则对应的公式将会计算出现错误。这样,在F2中输入公式:

  =IF(A2=0,"",IF(AND(A1=0,A2=" "),MATCH(0,OFFSET(A2,,,ROWS(A2:A$17)),0)-1,""))

  向下拖拉复制,如果B列有数据,公式可向右拖拉复制。


  PS:早上回复,上午修改(原填充1,修改为填充为空)

追问

验证了一下,这个公式是正确的,就是有一点小麻烦,头尾都要填上数字才能确保不出现错误。额我有1万多列数据要修改了。大神能不能把原来的数据,比如说0也显示在一起啊,要怎么修改呢

追答

你的数据本来就有点麻烦,不过应该可以找到快速预处理的办法,以便应用公式。可单击行标2,选择第2行,右键插入,也就是把整个数据下移一行。再选择第2行,输入一个空格后按ctrl+回车键。然后单击最后数据行下面一行的行标,选择该行,输入0后按ctrl+回车键,全行加上0。
要在与0对应的位置显示0,只要把公式稍修改即可:
=IF(A2=0,0,IF(AND(A1=0,A2=" "),MATCH(0,OFFSET(A2,,,ROWS(A2:A$17)),0)-1,""))
即把原公式中IF前面判断的A2=0,“”,改为A2=0,0

追问

这位大神确实帮里我的大忙了,果然和我想要的效果是一样的,哪里有困难,哪里就有函数。确实是这样。其他几位也是很不错的,相信公式都可以算出来,只不过这位的公式更简单一点,对于我这个菜鸟来说,简单实用立竿见影才是最好的谢谢。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-03-10

示意图如下:

在D2中输入公式:=IF(OR(ROW()=MATCH(9^9,A:A),MIN(IF(A3:A$101<>"",ROW(2:$99)))-ROW()=0,A2=""),"",MIN(IF(A3:A$101<>"",ROW(2:$99)))-ROW())  ,数组公式,同时按下ENTER键,SHIFT键,和CTRL键,右拉至E2,之后下拉.

在L2中输入公式:=IF(OR(G1<>"",G2=""),"",SUM(G1:INDIRECT(CHAR(COLUMN(A2)+70)&(MIN(IF(G3:G$101="",ROW(3:$101)))))))  ,数组公式,同时按下ENTER键,SHIFT键,和CTRL键,右拉至M2,之后下拉.

注意! D列是处理A列的,

         E列是处理B列的

         L列是处理G列的(求和)

         M列是处理H列的(求和)

追问

请问原来AB列的0也需要怎么解决啊

追答

是不是求A,B两列中相邻的0的个数I呀,倘若如此,把L2中公式该成:=IF(OR(A1"",A2=""),"",COUNT(A1:INDIRECT(CHAR(COLUMN(A2)+64)&(MIN(IF(A3:A$100="",ROW(3:$100))))))) ,同时按下ENTER键,SHIFT键,和CTRL键,之后,右拉,下拉.即可.

追问

不是0的个数,是0也显示出来,0也在DC区域显示,就像这个图

显示在一起的

第2个回答  2015-03-06
公式如下:=countif(要计算的区域,"")。
如果要计算的区域是A1到E5,则要计算的区域换成A1:E5。追问

这个方法也算不出来,只要一输入下拉,每个空格都是数字,就像我的提问说的,不需要每个空格有数字,只要它空几格,比如空3格,那3个空格中只有一个数字3,另外2个格子还是空的,其它数据0还保存不变,只是0和0之间多了一个数字而已

追答

被你说的晕头了。下拉不会出现数字的方法:选择区域包括2个0后再下来就不会有数字。或者拉出数字再处理成0:再某一个单元格输入0.复制,然后选中你的目标区域,右键,选择性粘贴,粘贴选公式,运算写乘。

追问

大神,我要的是右边这种效果哦,左边A列灰色部分其实都是空的,和BCDE空格是一样的,没有数据,我想要生成右边那样,原数据中的0是为了方便写的,可以改成任何数字和文本,可以一样,也可以不一样,现在问题就是需要计算每列相邻空白数据的个数,并让它自动计算数字哦

追答

这是每一列中以0开始的公式:=IF(A2"",A2,IF(A1"",IF(ISERROR(MATCH(0,A2:A$100,0)),100-ROW(),MATCH(0,A2:A$100,0)-1),""))(注意:我是算的你的区域共有100行,所以是A$100,你可以自行调整)。其他列以0开始相应该公式。

追问

这个公式好像也是错的,计算不出来

追答

我在excel上验证过了发出来的。

第3个回答  2015-03-06
需要先了解:数据返回到哪里呢?毕竟不知一个数据.空单元格是真空还是有公式的?
还有第一个0之前的空单元格数据要不要,还是只要两个0之间的,毕竟一列第一个单元格不一定是0
第4个回答  2015-03-06
我只知道用 计数公式 计算出 无数值 格的个数。
相似回答