我在Excel电子表格中有一个表格(表1),其中包含2017年1月至2020年12月的日期列(实际值+预测值)以及与这些日期对应的收入列。我有另一个表(表2),其中包含每年更新的1年数据点。本月,它从2017年5月到2018年4月。下个月,我将更新它以显示从2017年6月到2018年5月。我想通过使用索引匹配和偏移功能来简化此过程。我设想只需在单独的单元格中更新当前月份字段,表格2将自动更新12个月的数据点。关于如何做到的任何想法?
谢谢!
答案 0 :(得分:2)
我会避免使用OFFSET,因为它是一个易变的公式,但使用INDEX / MATCH来设置范围:
INDEX(B:B,MATCH(G1,A:A,0)):INDEX(B:B,MATCH(G1,A:A,0)+12)
这假定日期在A列中,您想要返回的数据在B列中:B,开始日期为G1。
你可以在任何使用范围的地方使用它,例如:
=SUM(INDEX(B:B,MATCH(G1,A:A,0)):INDEX(B:B,MATCH(G1,A:A,0)+12))
或者,如果您只想从一开始就返回N个月,那么请执行以下操作:
=INDEX($B:$B,MATCH($G2,$A:$A,0)+N)
将N更改为您想要的月份数。
现在你已经展示了你想要的东西:
对于月份列表:
=IF(ROW(1:1)>$F$3,"",INDEX(A:A,MATCH($E$3,$A:$A,0)+ROW(1:1)-1))
对于号码:
=IF(ROW(1:1)>$F$3,"",INDEX(B:B,MATCH($E$3,$A:$A,0)+ROW(1:1)-1))