excel count / sum stop count / sum match?

时间:2015-05-30 12:01:38

标签: excel count sum match sumifs

我曾试图查看此问题是否曾被提出过,但我似乎无法找到答案。

我有一列单元格(> 3000行),值为1或0(调用此列A)。该值将取决于B列中的值(包含值或不包含值)。 B列中的值是基于SUMIFS函数,从C列求和,并基于D列中的月份。

B中的值是在下个月的第一个工作日支付的。因此,SUMIFS函数将计算与上个月匹配的日期。这在理论上很有效,但并非每个第一个工作日都是本月的第一天。这导致SUMIFS功能不包括正确月份中的所有内容,并允许一些差异,当你处理人们的钱时,这并不是很好。此外,这种差异在多个时期内是复合的(在某些情况下,有超过100个时期,第1期的1美元差异相当于100期内的近1000美元)

我想知道的是:

当A列中的值为0时,有什么方法可以告诉SUMIFS功能(B列)停止?这将告诉SUM函数从列B中的当前值开始求和,并将函数继续到列B中前一个值之下的单元格。

我已经看到MATCH功能可能有效的建议,但是我无法看到如何使用COUNT或SUM执行此操作。

出于安全原因,此解决方案需要输入到单元格中,而不能是VBA。此外,它不能太大,因为它需要在工作簿中的200个工作表中复制(最初不是我的文件,我会以不同的方式完成,但这是另一个故事)。如果需要,可以输入另一列或两列。

感谢任何帮助。

编辑:

不幸的是,我无法发布截图的图片。我在这里包含了一个类似的截图(列不是相同的布局,但希望它给出了这个想法):

Rates calculations

SUMIF公式为(对于B2)

= SUMIFS(C2:C35,D2:D35,D2-1,A2:A35,1)

如果我想要月中的所有值,与付款的时间无关,这样可以正常工作。

但是,我需要的公式是:

SUM(C2:C35,D2:D35,D2-1,但在A2:A35遇到第一个0时停止)

由于

1 个答案:

答案 0 :(得分:2)

INDEX function可以提供有效的单元格引用,以便停止使用MATCH function 0 上找到完全匹配。

这个公式有点猜测,因为没有可供参考的样本数据,但我相信我已经理解了你的参数。

=SUMIFS(C2:index(C2:C35, match(0, A2:A35, 0)), D2:index(D2:D35, match(0, A2:A35, 0)), D2-1)

这似乎是独立的,不会被填满,所以我根据你的样本留下了相对的单元格地址。