这是我在Excel工作表中使用的公式。它工作正常,但有时不会更新,有时会做可能是原因的原因
=IF(F3=1,SUM(INDIRECT(ADDRESS(CELL("row")-12,6))),IF(F3=2,SUM(INDIRECT(ADDRESS(CELL("row")-12,6)):INDIRECT(ADDRESS(CELL("row")-12,6+1))),SUM(INDIRECT(ADDRESS(CELL("row")-12,6)):INDIRECT(ADDRESS(CELL("row")-12,6+2)))))
你可以用 INDEX 摆脱所有的易失性函数:
=SUM(INDEX(F:G,ROW()-12,IF(F3=1,1,0))
公式:
=IF(F3=1,
SUM(INDIRECT(ADDRESS(CELL("row")-12,6))),
IF(F3=2,
SUM(INDIRECT(ADDRESS(CELL("row")-12,6)):INDIRECT(ADDRESS(CELL("row")-12,6+1))),
SUM(INDIRECT(ADDRESS(CELL("row")-12,6)):INDIRECT(ADDRESS(CELL("row")-12,6+2)))
)
)
可以简单地写成:
SUM(INDIRECT(ADDRESS(CELL("row")-12,6 + IF(F3<=2,F3-1,2)))))
但这并不能解决问题。😉