非常新的,只是管理了vlookup,无论如何,我有一个包含两个表格的工作簿。在Sheet1上我有以下公式(= VLOOKUP(CZ54,Sheet2!$ A $ 1:$ Y $ 176,3,FALSE)),它显示Sheet2的ID号。这可以正常工作,但我如何才能显示为超链接,所以一旦点击它就会转到它从Sheet2上的vloopkup获得的特定单元格?
我试过= HYPERLINK(VLOOKUP(CZ54,Sheet2!$ A $ 1:$ Y $ 176,3,FALSE)但我收到错误“无法获取指定文件”。
如果有人能指出我的方向,我将不胜感激,谢谢。
答案 0 :(得分:2)
好的......这看起来很疯狂。这应该适合你。我在我的机器上进行了测试,它可以工作:
=HYPERLINK(MID(CELL("filename"),SEARCH("[",CELL("filename")), SEARCH("]",CELL("filename"))-SEARCH("[",CELL("filename"))+1) & ADDRESS(MATCH(CZ54,Sheet2!$A$1:$A$176),3,,,"sheet2"),VLOOKUP(CZ54,Sheet2!$A$1:$Y$176,3,FALSE))
让我们分解一下只是为了解释一些部分:
MID(CELL("filename"),SEARCH("[",CELL("filename")), SEARCH("]",CELL("filename"))-SEARCH("[",CELL("filename"))+1)
返回字符串[currentFileName],这是工作簿中超链接所需的格式。
MATCH(CZ54,Sheet2!$A$1:$A$176),3,,,"sheet2")
返回VLookup范围第一列中CZ54值的行号。
ADDRESS(MATCH(CZ54,Sheet2!$A$1:$A$176),3,,,"sheet2")
返回找到的行的地址,以及sheet2中的列(3,来自vlookup)。
结合起来:
MID(CELL("filename"),SEARCH("[",CELL("filename")), SEARCH("]",CELL("filename"))-SEARCH("[",CELL("filename"))+1) & ADDRESS(MATCH(CZ54,Sheet2!$A$1:$A$176),3,,,"sheet2")
返回超链接的实际地址,这是HYPERLINK
公式的第一个参数。
第二个参数是你提供的Vlookup,和voilà。
编辑:如果有人试图将此问题用于类似问题,则会发出警告,如果Match或Vlookup中使用的lookup_array不分别以第1行或第1列开头,则需要使用+ +来偏移发送到ADDRESS的值(起始行或列 - 1)。示例:Match(CZ54,$A$2:$A$176)+1
而不是MATCH(CZ54,Sheet2!$A$1:$A$176)
。
答案 1 :(得分:2)
这是丹尼尔公式的更紧凑版本。
使用Hyperlink
链接到同一工作簿中的另一个工作表,可以使用#
替换对工作簿名称的引用。
例如=HYPERLINK("#Sheet2!$C$10","Click Here")
所以,应用这个你得到
=HYPERLINK("#"&ADDRESS(MATCH(E21,Sheet2!$A$1:$A$176),3,,,"sheet2"),VLOOKUP(E21,Sheet2!$A$1:$Y$176,3,FALSE))
答案 2 :(得分:1)
HYPERLINK正在寻找文字,所以如果你要做类似的事情
=HYPERLINK(left(VLOOKUP(CZ54,Sheet2!$A$1:$Y$176,3,FALSE),255))
它应该返回一个可用的超链接