按名称超链接到工作表字段

我试图创build从一个工作表(主页)到另一个工作表(事件详细信息)的超链接,通过值查找目标单元格。

"Home": A [MyLink] "Events details" A ["hello there"] 

所以“MyLink”应该指向“你好”,与A列中“你好”的位置无关。

我试过的:我可以创build超链接到特定的单元格

 HYPERLINK("#'Events details'!A2") 

我可以find一个“你好”的位置,使用:

 =MATCH("hello there", 'Events details'!$A:$A, 0) 

所以我试着把它放在一起

 HYPERLINK("#'Events details'!MATCH("hello there", 'Events details'!$A:$A, 0)") 

但似乎没有工作

尝试这个:

 =HYPERLINK("#'Events details'!A"&MATCH("hello there",'Events details'!A:A,),"DisplayText") 

您试图使用的公式的问题是,Excel不评估文本string(引号之间的东西)。 我的意思是,可以看到下面:

 =HYPERLINK("#'Events details'!MATCH("hello there", 'Events details'!$A:$A, 0)") ^------------------------^ ^----------------------------^ 

Excel首先将上面的第一部分解释为文本"#'Events details'!MATCH(" ,后面跟着一个叫做hello there ,然后是另一个文本的命令", 'Events details'!$A:$A, 0)"报价工作的方式。

但是,正如你所看到的,不会给你任何有用的东西。

你需要做的是连接sheetname和单元地址(它有列名和行号)。 既然你已经知道列名是A,你知道完整的单元地址应该是类似于"#'Events details'!A_"地方,这里的下划线意思是你将使用MATCH检索的一些数字。 对于第一部分,您的HYPERLINKfunction变成:

 =HYPERLINK("#'Events details'!A" ) 

由于MATCH返回行号,所以你必须把它放在后面(注意整个MATCH函数在任何引号之外):

 =HYPERLINK("#'Events details'!A"MATCH("hello there", 'Events details'!$A:$A, 0)) 

可是等等! Excel不理解上面两个“部分”应该成为一个,所以你必须使用一些东西来连接这两个部分,最简单的方法是使用&

 =HYPERLINK("#'Events details'!A"&MATCH("hello there", 'Events details'!$A:$A, 0)) 

或者你可以使用更长的function:

 =HYPERLINK(CONCATENATE("#'Events details'!A",MATCH("hello there", 'Events details'!$A:$A, 0))) 

当然,您也可以使用HYPERLINK函数的可选第二个input来给链接一个“友好名称”,就像Excel调用它。