4

我目前正在使用以下公式

=SUM(INDIRECT("'Net "&($A$2)&" "&RIGHT($A48,2)&"'!C4:C21"))

这很完美,但我试图使它的范围部分(C4:C21)动态。

公式引用的$A$2是某人输入的内容,目前说“五月”。公式引用的 $A48 只是简单地提取年份的最后 2 位数字。

这些是文件的片段

共有 6 个重要的选项卡。有 4 个标签汇总了特定月份的往年销售额。所以我有 Net May 11、Net May 10、Net May 09、Net May 08。这些是 Indirect 公式找到的选项卡。

最后 2 个选项卡包括存在此公式的选项卡(Net May 12)和范围需要基于的选项卡(Cust May 12)。在 Cust May 12 选项卡中,A 列是日期,B 列是星期几,C 列是我们的销售数据。每天都有人进去,输入当天的销售额。例如,我目前有从 2012 年 5 月 1 日到 2012 年 5 月 18 日的销售数据。C 列中从 2012 年 5 月 19 日到 2012 年 5 月 31 日的所有内容都是空白的。当前存在的销售数据在 中C4:C21C22:C34为空白。因为我将往年的销售额与今年的销售额进行比较,所以它们必须具有可比性,这就是为什么该公式仅C4:C21用于所有往年的销售额。

我尝试了一些方法,包括 CountA 和一些补偿来尝试帮助我,但我一直无法找到解决方案来使我之前几年的所有销售公式的范围动态化。C4:C22当有人在 Cust May 12 选项卡中输入第二天的销售数据时,我需要该公式简单地增加到之前所有年份的值。

4

1 回答 1

5

你的问题并不完全清楚,但听起来你想要这样的东西:

=SUM(OFFSET(INDIRECT("'Net "&($A$2)&" "&RIGHT($A48,2)&"'!C4:C4"),0,0,COUNTA('Cust May 12'!$C$4:$C$34)))

但是,您可能需要考虑重组数据以将其仅存储在一个工作表中,例如使用年、月、日和销售额等列。然后,像“2011 年 5 月至今的销售额是多少”这样的问题更容易回答(尤其是在 Excel 2007 中添加的 SUMIFS 函数),如下所示:

=SUMIFS(<Sales column>,<Year column>,2011,<Month column>,"May",<Date column>,"<="&DAY(NOW()))
于 2012-05-23T17:48:14.177 回答