在一个vlookup函数中使用超链接
非常新的这一点,只有pipe理的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),但我得到错误“无法获取指定的文件”。
如果有人能指出我的方向,我将不胜感激,谢谢。
这是丹尼尔公式的一个更紧凑的版本。
使用Hyperlink
链接到同一工作簿中的其他工作表,可以用#
replace对工作簿名称的引用。
例如=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))
好的…这看起来很疯狂。 这应该适合你。 我在我的机器上testing它,它的工作原理:
=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)
返回一个string[currentFileName],这是工作簿中超链接所需的格式。
MATCH(CZ54,Sheet2!$A$1:$A$176),3,,,"sheet2")
返回VLookup范围的第一列中的CZ54值的行数。
ADDRESS(MATCH(CZ54,Sheet2!$A$1:$A$176),3,,,"sheet2")
返回find的行的地址,以及sheet2中的列(3,from your 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)
。
HYPERLINK正在寻找文字,所以如果你想做的事情
=HYPERLINK(left(VLOOKUP(CZ54,Sheet2!$A$1:$Y$176,3,FALSE),255)
它应该返回一个可用的超链接