对此非常陌生,无论如何,只管理了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(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,瞧。
编辑:如果有人尝试使用此方法解决类似问题,请发出警告,如果 Match 或 Vlookup 中使用的 Lookup_array 不分别以第 1 行或第 1 列开头,则需要使用 + 偏移发送到 ADDRESS 的值(起始行或列 - 1)。示例:Match(CZ54,$A$2:$A$176)+1
而不是 MATCH(CZ54,Sheet2!$A$1:$A$176)
。
关于excel - 在 vlookup 函数中使用超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12510611/