2015-11-19 89 views
0

我想知道如果在Excel中有一种方法来更改列如下所述?动态列更改

=A1*(Formula that returns a letter)2 

所以例如公式返回F中的结果信将是 =A1*F2

然后如果单元格A1 = 3,和F2 = 7。那么Excel公式的结果将是21

我希望这种方法是可能的,因为我希望能在SUMPRODUCT(SUMIFS(.......................................))中使用它,因为我分析的数据是混乱的列和标签。并与我可以尝试的其他东西混淆。

回答

0

INDIRECT function可以将text-that-looks-like-a-cell-reference并将其转换为有效的单元格引用。

=INDIRECT("A2") 
=INDIRECT("A"&2) 
=INDIRECT(<formula that returns a letter>&2) 
=INDIRECT(<formula that returns a letter>&"2") 

...每一种是一样的,

=A2 

所有你需要做的就是沿可以被解释为一个单元格引用间接一些构造文本字符串传递。

当使用INDIRECT功能时应该小心,因为它被认为是易失性 1功能。如果它们用于计算密集型公式或非常多地使用,则只要工作簿中的任何内容发生更改,用户就会经历计算滞后。


¹挥发性功能重新计算每当在整个工作簿改变任何东西,不只是当东西,影响了他们的成果的变化。的挥发性功能的示例是INDIRECTOFFSETTODAYNOWRANDRANDBETWEENCELLINFO工作表函数的一些子函数也会使它们变得不稳定。

+0

@Ethan_Moe - 如果您无法将其纳入复杂的公式中,请编辑您的问题以包含更复杂的公式,并且可能会提供帮助。 – Jeeped

+0

谢谢你的帮助。我会试图合并它,如果我挣扎,我会更新我的帖子。 –