使用一个单元格的引用来创build相对引用

我的P11单元格引用另一个单元格:

=J14 

我想在其他多个单元格中引用P11单元格中的引用。 EX:

 =OFFSET(J14,0,-4) =OFFSET(J14,0,1) =OFFSET(J14,0,2) 

除了OFFSET公式中的“J14”,理想情况下会有一个引用来抓取P11单元格的引用,因为每次我都需要更改引用。 因此抓住P11单元的引用是很有帮助的,所以我只需要改变一个单元的引用而不是4。

我用了大约一个小时的search,但我似乎无法find任何东西。 如果你们能帮上忙,那就太好了,因为我找不到解决办法!

假设在单元格P11中有公式=J14 ,可以使用FORMULATEXTINDIRECTSUBSTITUTE的组合来获取单元格引用。 我假设单元格P11中的公式只能是对其他单元格的引用(例如=J14=M10=N14 )。 如果这不是真的,公式将比引用一个单元格更复杂,这种方法将无法正常工作。

首先我们可以使用=FORMULATEXT(P11)来获取单元格P11公式的文本。 结果是=J14 。 为了成为一个有效的单元格引用,我们必须删除等号,我们可以通过像这样应用SUBSTITUTE函数来实现:

 =SUBSTITUTE(FORMULATEXT(P11),"=","") 

这样的结果是J14 ,这是一个有效的参考,我们可以将它传递给INDIRECT函数,以获得我们最终的结果。

所以最后,在你的每一个偏移公式中,你将会拥有:

 =OFFSET(INDIRECT(SUBSTITUTE(FORMULATEXT(P11),"=","")),0,-4) =OFFSET(INDIRECT(SUBSTITUTE(FORMULATEXT(P11),"=","")),0,1) =OFFSET(INDIRECT(SUBSTITUTE(FORMULATEXT(P11),"=","")),0,2) 

这种方法的好处是您只需要更改单元格P11的公式,而不依赖于中间单元格。

我希望这有助于,如果没有,你可以澄清你的问题,我可以再试一次。

你会想要使用的INDIRECT()相结合:

在另一个空单元格中,让我们说Q11,你将把单元格引用作为stringP1

然后在他们的各种单元格中的下列公式:

 =INDIRECT(Q11) =OFFSET(INDIRECT(Q11),0,-4) =OFFSET(INDIRECT(Q11),0,1) =OFFSET(INDIRECT(Q11),0,2) 

关于这两个公式有两个字,它们是挥发性函数。 这意味着他们每次重新计算excel时,都会重新计算它们引用的数据是否更改。 所以,如果你有一张表格,它会在计算时间上做出明显的改变。 只有四个不会引人注目。