0

我有下表:

    JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC
A   10  20  30  40  50  60  70  80  90  100 110 120
B   20  40  60  80  100 120 140 160 180 200 220 240
C   30  60  90  120 150 180 210 240 270 300 330 360

我试图获得从年初到当月的 A 的总和。让我们以这个月为例,我想要 A 从一月到九月的总和。

4

3 回答 3

1

INDIRECT()是你的朋友...

假设您的表格位于表格顶部,并且 A4 包含您要停止的月份...

=SUM(INDIRECT("B2:"&A4&"2"))

如果您想为公式添加动态扭曲,请将您的单元格命名为 MONTHVALUES,然后您可以使用ROW(monthvalues)COLUMN(monthvalues)

并且当前月份列将变为 COLUMN(monthvalues)+MONTH(NOW())-1

如果您命名一个包含所需行的单元格

因此您可以参考所需行的从一月到列月的范围

=SUM(INDIRECT(ADDRESS(ROW(monthvalues)+desiredrow-1;COLUMN(monthvalues))&":"&ADDRESS(ROW(monthvalues)+desiredrow-1;COLUMN(monthvalues)+MONTH(NOW()))))
于 2013-10-01T13:43:46.453 回答
1

另一种方法是使用 INDEX 和 MATCH。

=SUM(B2:INDEX(B2:M2,1,MATCH(UPPER(TEXT(TODAY(),"MMM")),B1:M1,FALSE)))

有关更多信息,请参阅http://datapigtechnologies.com/blog/index.php/using-indexmatch-as-a-cell-reference/

于 2013-10-01T16:47:01.270 回答
0

此公式将返回 JAN 到当前月份的值的总和。我假设表格位于文档的顶部和左侧。

A 值:

=SUM(INDIRECT("B2:"&ADDRESS(2,MONTH(TODAY())+1,4)))

B 值:

=SUM(INDIRECT("B3:"&ADDRESS(3,MONTH(TODAY())+1,4)))

C 值:

=SUM(INDIRECT("B4:"&ADDRESS(4,MONTH(TODAY())+1,4)))

*编辑*

为了使其更具动态性,假设您在单元格“H8”中有值“A”并希望将 A 总和返回到当前月份,您可以这样做:

=SUM(INDIRECT("B"&MATCH(H8,A1:A4,0)&":"&ADDRESS(MATCH(H8,A1:A4,0),MONTH(TODAY())+1,4)))
于 2013-10-01T14:10:13.670 回答