Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 12286|回复: 14

[已解决]不确定行数的连续几行的数值求和

[复制链接]
发表于 2015-3-7 13:07 | 显示全部楼层 |阅读模式
本帖最后由 快乐子丑 于 2015-3-7 15:49 编辑

我是超级菜鸟里的菜鸟啊.遇到一问题,请请教.先行谢过!
有这样一个表格:


每个人名下是他的销售情况,针对每个人进行小计.在每个人名对应的E列进行输出,用函数组合,可以得到结果吗?
B列没有人名的,在对应的E列不显示.(这个好解决),关键问题是求和.


先谢过各位的回复.可能是我没表达清楚,现在重新把问题解释一下,并上传文件.
最佳答案
2015-3-7 15:16
本帖最后由 baksy 于 2015-3-7 15:20 编辑

E2公式,下拉;
=IF(A2<>"",SUM(D2:D999)-SUM(E3:E999),"")

销售统计.rar

2.55 KB, 下载次数: 47

发表于 2015-3-7 13:24 | 显示全部楼层
回复

使用道具 举报

发表于 2015-3-7 14:08 | 显示全部楼层
E2
  1. =IF(A2>"",SUMPRODUCT(C2:C$11,D2:D$11)-SUM(E3:E$11),"")
复制代码
下拉
回复

使用道具 举报

发表于 2015-3-7 15:16 | 显示全部楼层    本楼为最佳答案   
本帖最后由 baksy 于 2015-3-7 15:20 编辑

E2公式,下拉;
=IF(A2<>"",SUM(D2:D999)-SUM(E3:E999),"")

Book1.rar

3.62 KB, 下载次数: 56

回复

使用道具 举报

 楼主| 发表于 2015-3-7 15:57 | 显示全部楼层
本帖最后由 快乐子丑 于 2015-3-7 16:53 编辑
baksy 发表于 2015-3-7 15:16
E2公式,下拉;
=IF(A2"",SUM(D2:D999)-SUM(E3:E999),"")


[em17][em17][em17],看似很复杂的问题,我一直在行号上找来找去地弄,最后快晕地上了,没想到这个方法,很灵巧呀!
谢谢.刚看上去时,觉得不可以呢.再次感谢您!


不过,刚刚发现,公式有一个弊端,如果结束的行号,小于表格的有效行号,就是说,销售额一列,有数字的行号超过了公式里的"999",结果就不正确了.
如果这个销售记录,如果每天都加记内容,那么这个结束的行号可能很大,有没有更加完善的方法呢?

我当初想的是遇到A列的第一个不是""的行,则把D列加到这一行,再减去这一行的数字就行了.但对函数掌握不好,不知道有没有这样的函数呢?

点评

可以适当放宽999范围  发表于 2015-3-7 18:51
回复

使用道具 举报

 楼主| 发表于 2015-3-7 17:26 | 显示全部楼层
baksy 发表于 2015-3-7 15:16
E2公式,下拉;
=IF(A2"",SUM(D2:D999)-SUM(E3:E999),"")

呵呵,又遇到了新的情况,[em06],这下我的菜鸟显得更菜了.

当记录增加后,比如整个季度后,需要对小明的销售情况进行汇总,结果却是value,是得到的值不能计算吗?

总销售额
小明
#VALUE!
小强
#VALUE!
小花
用到的公式是:=SUMPRODUCT(($A$2:$A422="小明")*($E$2:$E422)),有什么不对吗?

Book1.rar

5.16 KB, 下载次数: 5

回复

使用道具 举报

发表于 2015-3-7 17:42 | 显示全部楼层
本帖最后由 fjmxwrs 于 2015-3-7 17:51 编辑
快乐子丑 发表于 2015-3-7 17:26
呵呵,又遇到了新的情况,,这下我的菜鸟显得更菜了.

当记录增加后,比如整个季度后,需要对小明的销 ...
数组公式
  1. =IF(B2="","",SUM((LOOKUP(ROW($1:$10),IF(B$2:B$11<>"",ROW($1:$10)),B$2:B$11)=B2)*(F$2:F$11)))
复制代码

销售统计.zip

5.43 KB, 下载次数: 14

回复

使用道具 举报

发表于 2015-3-7 17:52 | 显示全部楼层
如果你按你的新表一样的话,建议你用VBA来统计比较方便
回复

使用道具 举报

 楼主| 发表于 2015-3-7 18:06 | 显示全部楼层
fjmxwrs 发表于 2015-3-7 17:52
如果你按你的新表一样的话,建议你用VBA来统计比较方便

Vba更菜了.
二十年前对basic语言还有些了解.现在都在我这里睡觉了.
怎么编写呢?还请指导.
回复

使用道具 举报

发表于 2015-3-7 18:13 | 显示全部楼层
本帖最后由 tt0203 于 2015-3-7 18:45 编辑

不用倒算不用lookup再写一个=IF(B2>0,SUM((COUNTA(B$2:B2)=SUBTOTAL(3,OFFSET(B$2,,,ROW(1:13))))*F2:F14),"")
=IF(B2>0,SUM(F2:INDEX(F:F,MIN(IF(B3:B13>0,ROW(2:12),99)))),"")
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-19 05:41 , Processed in 0.723351 second(s), 18 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表