就像标题所说的那样,我试图在excel工作簿中的任何位置找到唯一字符串的位置。它保证是唯一的,但可以出现在我表格的任何行或列中。
所以对于这个例子:
我希望单元格B7返回B3(5的位置)。如果我知道它会出现的列或行,那么这是一个简单的查找,匹配或索引问题。我很难找到一个值可以位于工作表中任何位置的示例。
答案 0 :(得分:1)
这应该有效:
=ADDRESS(SUMPRODUCT((A1:C4=B6)*ROW(A1:C4)),SUMPRODUCT((A1:C4=B6)*COLUMN(A1:C4)))
要返回相对引用B3
,请将,4
添加到ADDRESS
公式的末尾
=ADDRESS(SUMPRODUCT((A1:C4=B6)*ROW(A1:C4)),SUMPRODUCT((A1:C4=B6)*COLUMN(A1:C4)),4)
说明的
SUMPRODUCT
是一个数组公式。它接受多个数组,将它们相乘,然后对结果数组求和。在这种情况下,只有一个数组,因此它只是对该数组中的值进行求和而不对其进行任何其他操作。
让我们分解这个数组:(A1:C4=B6)*ROW(A1:C4)
(A1:C4=B6)
看起来像这样:
FALSE FALSE FALSE
FALSE FALSE FALSE
FALSE TRUE FALSE
FALSE FALSE FALSE
和ROW(A1:C4)
看起来像这样:
1 1 1
2 2 2
3 3 3
4 4 4
将两个数组相乘时,可以得到:
FALSE*1 FALSE*1 FALSE*1
FALSE*2 FALSE*2 FALSE*2
FALSE*3 TRUE*3 FALSE*3
FALSE*4 FALSE*4 FALSE*4
Excel会将FALSE
视为0
,将TRUE
视为1
,以便数组评估为:
0 0 0
0 0 0
0 3 0
0 0 0
将该数组包装在SUMPRODUCT
公式中将对数组中的值求和并返回3
,这是可以找到5
的行。