在日期类型 header 上使用 INDIRECT()
Using INDIRECT() on Date type header
我正在尝试动态计算电子表格的周复一周,因为新数据每周都会在 header 中的日期添加到列中。我的数据如下所示:
Name WoW 9/27/2018 10/4/2018 10/11/2018 10/18/2018 10/25/2018
A ? 100 120
B ? 120 140
A 的 WoW 应该是 120/100-1 = 20%
。
B 的 WoW 应该是 140/120-1 = 16.67%
.
我试图在单元格 B2 中使用 INDIRECT()
来计算 WoW,如下所示:
=INDIRECT(IF(MATCH(TODAY(),C:G,0),TODAY(),""))/INDIRECT(IF(MATCH(TODAY()-7,C1:G1,0),TODAY()-7,""))-1
然而它只是 returns #REF!
.
知道我做错了什么吗?
P.S。转念一想,这似乎会在 today()+1
到 today()+6
上失败,所以如果有可能更新 match()
的方法,我们将不胜感激。
我怀疑你想要更像的东西:
=INDEX(2:2,MATCH(TODAY()+WEEKDAY(TODAY())-5,:,0))/INDEX(2:2,MATCH(TODAY()+WEEKDAY(TODAY())-5,:,0)-1)-1
不仅仅是 D2/C2-1
。 INDIRECT 是不稳定的,所以最好避免(尽管今天也是)。
另一种选择是:
=INDEX(2:2,MATCH(999999,2:2,1)) / INDEX(2:2,MATCH(999999,2:2,1)-1) -1
放入B2单元格并向下复制。它只使用每行中最后两个不为空的单元格来进行计算。
我正在尝试动态计算电子表格的周复一周,因为新数据每周都会在 header 中的日期添加到列中。我的数据如下所示:
Name WoW 9/27/2018 10/4/2018 10/11/2018 10/18/2018 10/25/2018
A ? 100 120
B ? 120 140
A 的 WoW 应该是 120/100-1 = 20%
。
B 的 WoW 应该是 140/120-1 = 16.67%
.
我试图在单元格 B2 中使用 INDIRECT()
来计算 WoW,如下所示:
=INDIRECT(IF(MATCH(TODAY(),C:G,0),TODAY(),""))/INDIRECT(IF(MATCH(TODAY()-7,C1:G1,0),TODAY()-7,""))-1
然而它只是 returns #REF!
.
知道我做错了什么吗?
P.S。转念一想,这似乎会在 today()+1
到 today()+6
上失败,所以如果有可能更新 match()
的方法,我们将不胜感激。
我怀疑你想要更像的东西:
=INDEX(2:2,MATCH(TODAY()+WEEKDAY(TODAY())-5,:,0))/INDEX(2:2,MATCH(TODAY()+WEEKDAY(TODAY())-5,:,0)-1)-1
不仅仅是 D2/C2-1
。 INDIRECT 是不稳定的,所以最好避免(尽管今天也是)。
另一种选择是:
=INDEX(2:2,MATCH(999999,2:2,1)) / INDEX(2:2,MATCH(999999,2:2,1)-1) -1
放入B2单元格并向下复制。它只使用每行中最后两个不为空的单元格来进行计算。