0

我发布这个问题是因为我花了很长时间试图自己找到答案。

基本上我有一个单元格引用一个单元格,该单元格引用另一个单元格,其中包含一些数据。例如,A3=A2andA2=A1单元格A1包含文本Hello。所以单元格A2A3包含相同的文本。见下图:

在此处输入图像描述

但是假设我实际上希望单元格A3显示相对于A2指向的单元格位置的数据(记住A3=A2)。我需要使用该OFFSET功能来执行此操作,并且有人会认为这A3=OFFSET(A2, 0, 1)可能有效(单击此处查看 OFFSET 的工作原理)。但OFFSET本身不起作用。它将数据从单元格返回到单元格的右侧A2(如下所示),而不是意识到A2指向A1,然后将数据返回到 的右侧A1

在此处输入图像描述

那么我们如何A3=B1通过 cell 间接获得 cellA2呢?

4

1 回答 1

0

我们需要使用函数的组合,其中之一是INDIRECT. 单击此处查看 INDIRECT 的工作原理。因此,为了使用INDIRECT我们需要在 cell 中找到的文本A2。当在单元格中使用时,该FORMULATEXT函数(更多信息=A1)将从单元格中提取:A2A3

A3=FORMULATEXT(A2),如下图:

在此处输入图像描述

现在我们只需=要从文本中剥离出来,以便我们有一个INDIRECT可以使用的实际文本引用。您可以使用RIGHTorMID函数(rightmid)与LEN函数(length)结合使用。如果LEN工作表中的行数从一位数变为两位数,等等,则需要。您还需要再次传入该FORMULATEXT函数,以便计算文本的长度=A1。如果不这样做,它将计算Hello. 您还需要知道这是您需要的正确长度,因为您正在从文本LEN()-1中丢弃。=

例如:A3=RIGHT(FORMULATEXT(A2),LEN(FORMULATEXT(A2))-1)给我们:

在此处输入图像描述

把它们放在一起,你可以像这样引用来自的OFFSET单元格:A2A3INDIRECT

A3=OFFSET(INDIRECT(RIGHT(FORMULATEXT(A2),LEN(FORMULATEXT(A2))-1)),0,1)

在此处输入图像描述

于 2015-08-13T19:49:43.990 回答