我遇到拖动单元格公式并让它们更新列引用的问题。
我有多个公式引用单个单元格(单元格A2)以获取要合并到单元格引用中的数值 - 因此我可以更新此单个单元格,并在我向电子表格添加数据时让所有公式计算增加的范围每月。我在同一列中使用了INDIRECT函数而不是几个公式,但是当我向右拖动时,列字母引用不会更新,因为它在" "标记。
我确实在论坛上找到了类似的解决方案,但由于我的" "标记包含两个列/字母引用。
我试图拖延的公式是这样的:
=ConsecUpDays(INDIRECT("D25:D" &$A$2))
=MaxPosSequence(INDIRECT("D25:D" &$A$2))
=AVERAGE(IF((INDIRECT("D25:D" &$A$2))>0,((INDIRECT("D25:D" &$A$2))),""))
=COUNTIF((INDIRECT("D25:D" &$A$2)),"<>0")
非常感谢任何帮助!
答案 0 :(得分:1)
使用INDEX等效项并丢弃INDIRECT。
'locked as string with INDIRECT
=ConsecUpDays(INDIRECT("D25:D" &$A$2))
'relative column D with INDEX
=ConsecUpDays(INDEX(D:D, 25):INDEX(D:D, $A$2))
此外,INDEX是非易失性的,因此您不应该得到相当多的计算滞后。
答案 1 :(得分:1)
感谢您提供的解决方案 - 看起来比我想象的更直接!
非常感谢你_kev和John Topley。
我明白你的意思_kev。谢谢约翰,我能够用它来修改我的公式并使它们可以拖拽。
我的公式现为:
=ConsecUpDays(INDIRECT(ADDRESS(25,COLUMN(D:D))&":"&ADDRESS($A$2,COLUMN(D:D))))
=MaxPosSequence(INDIRECT(ADDRESS(25,COLUMN(D:D))&":"&ADDRESS($A$2,COLUMN(D:D))))
= AVERAGEIF(INDIRECT(ADDRESS(25,COLUMN(d:d))及;&#34;:&#34;&安培; ADDRESS($ A $ 2,COLUMN(d:d))),&#34 ;&gt; 0&#34;,INDIRECT(地址(25,COLUMN(D:D))&amp;&#34;:&#34;&amp; ADDRESS($ A $ 2,COLUMN(D:D))))< / p>
=COUNTIF((INDIRECT(ADDRESS(25,COLUMN(D:D))&":"&ADDRESS($A$2,COLUMN(D:D)))),"<>0")
非常感谢。