伙计们,我正在尝试编写一个动态求和公式,其中数组范围从截止日期开始(此日期每月更改一次)。
我在A2
的第一行 201801 中有句点,在B2
的 201802 中有句点等等。
从A3
开始,我有销售数字。
例如截止日期为 201806 ,所以我需要将求和公式设为=sum($F3:L3)
我想做的是=sum(ADDRESS(3,MATCH($B$1,$A$2:$L$2,0),3):L3)
ADDRESS(3,MATCH($B$1,$A$2:$L$2,0),3)
返回$F3
,这在求和公式中不起作用!
答案 0 :(得分:2)
INDIRECT
是volatile,因此可能不是最好的功能。
我认为L3
是静态的,并且您希望将查找值加到L3
上。
MATCH(201806,$2:$2,0)
将返回 201806 首次出现的列号。INDEX($3:$3,,6):$L$3
将返回对F$3:$L$3
的引用(F
是第六列-将6
替换为MATCH
函数)。 SUM(F$3:$L$3)
全部加起来。将F$3:$L$3
替换为INDEX
。 最终公式为:
=SUM(INDEX($3:$3,,MATCH(201806,$2:$2,0)):$L$3)
用范围引用替换201806
。
如果结束日期是可变的,则可以使用另一个INDEX
函数来查找它。
这将使用MAX
函数来查找最后一个日期:
=SUM(INDEX($3:$3,,MATCH(201806,$2:$2,0)):INDEX($3:$3,,MATCH(MAX($2:$2),$2:$2,0)))
这从六月到十二月增加:
=SUM(INDEX($3:$3,,MATCH(201806,$2:$2,0)):INDEX($3:$3,,MATCH(201812,$2:$2,0)))