引用一个单元格的位置被另一个单元格引用
Reference the location of a cell that is referenced by another cell
我发布这个问题是因为我自己寻找答案时遇到了麻烦。
基本上,我有一个单元格引用一个单元格,该单元格引用另一个包含一些数据的单元格。例如,A3=A2
和 A2=A1
以及单元格 A1
包含文本 Hello
。所以单元格 A2
和 A3
也包含相同的文本。见下图:
但是假设我实际上希望单元格 A3
显示与 A2
指向的单元格位置相关的数据(记住 A3=A2
)。我需要使用 OFFSET
函数来执行此操作,有人会认为 A3=OFFSET(A2, 0, 1)
可能有效 (click here to see how OFFSET works)。但是 OFFSET
不能单独工作。它会 return 来自单元格 A2
右侧的单元格的数据(如下所示),而不是意识到 A2
指向 A1
然后 return读取 A1
右侧的数据。
那么我们如何通过单元格 A2
间接获得单元格 A3=B1
?
我们需要使用函数组合,其中之一是INDIRECT
。 click here to see how INDIRECT works. So in order to use INDIRECT
we need the text found in cell A2
. The FORMULATEXT
function (more info) 将在单元格 A3
:
中像这样使用时从单元格 A2
中提取 =A1
A3=FORMULATEXT(A2)
,如下图:
现在我们只需要从文本中删除 =
,这样我们就有了 INDIRECT
可以使用的实际文本引用。您可以使用 RIGHT
或 MID
函数 (right, mid) in combination with the LEN
function (length) 执行此操作。如果 sheet 中的行数从一位数变为两位数,则您需要 LEN
,依此类推。您还需要再次传入 FORMULATEXT
函数,以便它可以计算文本 =A1
的长度。如果不这样做,它将计算 Hello
的长度。您还需要注意 LEN()-1
是您需要的正确长度,因为您从文本中丢弃了 =
。
例如:A3=RIGHT(FORMULATEXT(A2),LEN(FORMULATEXT(A2))-1)
给我们:
将它们放在一起,您可以 OFFSET
A2
从 A3
引用的单元格与 INDIRECT
像这样:
A3=OFFSET(INDIRECT(RIGHT(FORMULATEXT(A2),LEN(FORMULATEXT(A2))-1)),0,1)
我发布这个问题是因为我自己寻找答案时遇到了麻烦。
基本上,我有一个单元格引用一个单元格,该单元格引用另一个包含一些数据的单元格。例如,A3=A2
和 A2=A1
以及单元格 A1
包含文本 Hello
。所以单元格 A2
和 A3
也包含相同的文本。见下图:
但是假设我实际上希望单元格 A3
显示与 A2
指向的单元格位置相关的数据(记住 A3=A2
)。我需要使用 OFFSET
函数来执行此操作,有人会认为 A3=OFFSET(A2, 0, 1)
可能有效 (click here to see how OFFSET works)。但是 OFFSET
不能单独工作。它会 return 来自单元格 A2
右侧的单元格的数据(如下所示),而不是意识到 A2
指向 A1
然后 return读取 A1
右侧的数据。
那么我们如何通过单元格 A2
间接获得单元格 A3=B1
?
我们需要使用函数组合,其中之一是INDIRECT
。 click here to see how INDIRECT works. So in order to use INDIRECT
we need the text found in cell A2
. The FORMULATEXT
function (more info) 将在单元格 A3
:
A2
中提取 =A1
A3=FORMULATEXT(A2)
,如下图:
现在我们只需要从文本中删除 =
,这样我们就有了 INDIRECT
可以使用的实际文本引用。您可以使用 RIGHT
或 MID
函数 (right, mid) in combination with the LEN
function (length) 执行此操作。如果 sheet 中的行数从一位数变为两位数,则您需要 LEN
,依此类推。您还需要再次传入 FORMULATEXT
函数,以便它可以计算文本 =A1
的长度。如果不这样做,它将计算 Hello
的长度。您还需要注意 LEN()-1
是您需要的正确长度,因为您从文本中丢弃了 =
。
例如:A3=RIGHT(FORMULATEXT(A2),LEN(FORMULATEXT(A2))-1)
给我们:
将它们放在一起,您可以 OFFSET
A2
从 A3
引用的单元格与 INDIRECT
像这样:
A3=OFFSET(INDIRECT(RIGHT(FORMULATEXT(A2),LEN(FORMULATEXT(A2))-1)),0,1)