按名称超链接到工作表字段
我试图创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
检索的一些数字。 对于第一部分,您的HYPERLINK
function变成:
=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调用它。