跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何在Excel中查找并返回活动超链接?

Author Xiaoyang Last modified

在日常使用Excel的工作中,通常会使用VLOOKUP函数来查找并返回与数据中特定条目相关联的值。然而,当查找结果返回超链接时,经常会遇到一个问题:返回的不是可点击的活动链接,而是纯文本URL。例如,如果您的源数据包含带有嵌入式超链接的网站链接,在进行典型的VLOOKUP操作后,结果只会显示为未格式化的文本,如下图所示。

A screenshot showing the issue of VLOOKUP returning plain text instead of hyperlinks in Excel

在这种情况下,确保查找返回的是一个活动超链接(可以点击并在浏览器中打开的链接)可以提高可用性、节省时间,并且对于涉及网址、文件路径或其他可点击资源的数据集非常重要。

本教程介绍了通过查找返回活动超链接的多种实用解决方案,分析了它们的应用场景、适用的数据类型以及潜在的局限性。您还将学习关键注意事项、故障排除技巧以及选择最适合您工作表需求的方法的建议。


arrow blue right bubble通过公式查找并返回活动超链接

要查找并返回作为活动超链接的值,您可以结合HYPERLINKVLOOKUP函数。这种方法简单易用,适用于将超链接干净地存储为文本URL地址(如“https://www.example.com”或网络文件路径)的源数据。这将使返回的值在您的工作表中变为可点击的链接。

假设您有一个包含两列的表格:一列是查找值(例如名称),另一列是作为纯文本或超链接的URL。要根据用户输入值检索相应的活动超链接,请按照以下步骤操作:

1. 在您想要显示结果的空白单元格中输入以下公式:

=HYPERLINK(VLOOKUP(D2, $A$1:$B$8,2, FALSE))

2. 按下Enter键确认。该单元格现在会显示为活动的、可点击的链接,如下所示:

A screenshot showing the use of HYPERLINK and VLOOKUP formula to return active hyperlinks in Excel

参数及使用说明:

  • D2:包含您要查找的值的单元格。
  • $A$1:$B$8:第一列包含查找值,第二列包含超链接的数据区域。如果您计划复制公式,请使用绝对引用。
  • 2:表示超链接位于您指定区域的第二列。

提示:

  • 如果找不到查找值,公式将返回错误(#N/A)。请仔细检查查找值是否在表格范围内有精确匹配项。
  • 如果您希望显示的文本不同于实际的超链接(例如显示名称而不是URL),可以为 HYPERLINK:
    =HYPERLINK(VLOOKUP(D2,$A$1:$B$8,2,FALSE),D2)
    添加一个可选的第二个参数。这样会将D2的值显示为链接文本。
  • 这种方法仅在超链接以标准URL或文件路径文本形式存储时有效。它无法恢复Excel插入的超链接(其中显示文本和超链接地址不同),或者没有原始URL的“友好”显示名称。

常见问题及故障排除:

  • 如果结果不可点击,请确保您的数据包含完整的有效网络URL(包括“http://”或“https://”)。
  • 如果得到的结果不正确或缺失,请检查查找范围,并确保列索引与包含超链接的列相匹配。
  • 对于本地文件,请确保您的超链接路径使用了适当的格式(例如,“C:\Folder\file.xlsx”)。

优点:设置简单,公式可以拖动应用于多行,最适合存储为纯文本URI的超链接表格。

局限性:如果不一致,无法分别检索显示文本和超链接地址,也无法识别手动插入的超链接(只有显示文本可见的情况)。

arrow blue right bubbleVBA代码——通过查找返回并插入活动超链接(高级场景)

如果您需要在某个范围内查找特定值,并返回其原始活动超链接(包括显示文本和可点击链接本身),而不仅仅是普通URL,VBA提供了一种可靠的解决方案。此代码会在您选定的范围内搜索目标值,当找到匹配项时,它会将确切的超链接(文本+地址)复制到您指定的单元格中。这在显示文本和超链接地址不同的情况下,或者基于公式的无法捕获实际链接的情况下特别有用。

当您的数据包含带有底层超链接的“友好”显示名称、指向文件或文件夹的超链接或非标准超链接格式时,此方法尤其有用。VBA允许您同时复制可见的链接文本和底层超链接地址,或者使用查找结果在新位置重新插入超链接。

注意事项:确保在您的Excel环境中启用了宏。在运行VBA脚本之前,始终备份您的工作簿,尤其是在处理重要数据时。

优点:能够处理复杂情况——例如单元格插入的超链接以及显示文本和超链接地址分离的情况。允许您处理批量超链接或自定义结果。

局限性:需要基本的VBA知识,并且在所有受限制或基于Web的Excel环境中不受支持。

1. 单击“开发工具”>“Visual Basic”打开VBA编辑器。在新打开的窗口中,单击“插入”>“模块”,并将以下代码粘贴到模块中:

Sub LookupAndInsertHyperlink()
    Dim LookupValue As String
    Dim LookupRange As Range
    Dim ResultCell As Range
    Dim cell As Range
    Dim hyperlinkFound As Boolean
    Dim linkAddress As String
    Dim linkText As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set LookupRange = Application.InputBox("Select the lookup range (must include display text/cell and hyperlink)", xTitleId, Selection.Address, Type:=8)
    Set ResultCell = Application.InputBox("Select the cell to output the hyperlink", xTitleId, "", Type:=8)
    LookupValue = Application.InputBox("Enter the value to lookup", xTitleId, "", Type:=2)
    
    hyperlinkFound = False
    For Each cell In LookupRange
        If cell.Value = LookupValue Then
            If cell.Hyperlinks.Count > 0 Then
                linkAddress = cell.Hyperlinks(1).Address
                linkText = cell.Value
                ResultCell.Hyperlinks.Add Anchor:=ResultCell, Address:=linkAddress, TextToDisplay:=linkText
                hyperlinkFound = True
                Exit For
            End If
        End If
    Next
    
    If Not hyperlinkFound Then
        ResultCell.Value = "No matching hyperlink found"
    End If
End Sub

2. 要运行脚本,在您的工作簿打开时,按Alt + F8,选择LookupAndInsertHyperlink,然后单击“运行”。

3. 在出现的对话框中:

  • 选择您的查找数据范围(包括值及其超链接)。
  • 选择输出超链接的目标单元格。
  • 输入您要搜索的查找值。宏将找到匹配值,提取其超链接(即使显示文本与底层链接不同),并将其作为活动超链接插入到您选择的位置。

实用提示和错误提醒:

  • 如果找不到值或单元格中不存在超链接,目标将显示“未找到匹配的超链接”。
  • 如果要一次处理多个查找,请考虑扩展VBA代码或根据需要多次运行脚本。
  • 即使单元格中的超链接不仅仅是一个URL字符串,此脚本也有效,并且会同时复制地址和显示文本。

问题排查建议:

  • 验证您的输入范围是否包含实际超链接的列。
  • 如果VBA宏无法运行,请检查是否已在您的Excel设置中启用了宏。
  • 如果显示“未找到匹配的超链接”,请仔细检查您的查找值是否正确,并确认对应行中存在超链接。
  • 在运行宏之前,始终保存您的工作簿以防需要撤销更改。

总结:

  • 对于标准的基于文本的超链接和快速查找,请使用公式方法。
  • 对于更高级的需求(例如恢复手动插入的超链接、检索显示文本和链接地址,或跨范围动态应用结果),请使用VBA方法。

最佳Office办公效率工具

🤖 Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数……
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入……
高级LOOKUP多条件VLookup|多值VLookup|多表查找|模糊查找……
高级下拉列表快速创建下拉列表 |依赖下拉列表 | 多选下拉列表……
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列……
特色功能网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)……
15大工具集12项 文本工具添加文本删除特定字符等)|50+种 图表 类型甘特图等)|40+实用 公式基于生日计算年龄等)|19项 插入工具插入二维码从路径插入图片等)|12项 转换工具小写金额转大写汇率转换等)|7项 合并与分割工具高级合并行分割单元格等)| ……
Kutools支持多种语言——可选择英语、西班牙语、德语、法语、中文等40多种语言!

通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……


Office Tab为Office带来多标签界面,让您的工作更加轻松

  • 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读
  • 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
  • 可提升50%的工作效率,每天为您减少数百次鼠标点击!

所有Kutools加载项,一键安装

Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。

Excel Word Outlook Tabs PowerPoint
  • 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
  • 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
  • 协同更高效——提升Office应用间的整体工作效率
  • 30天全功能试用——无需注册,无需信用卡
  • 超高性价比——比单独购买更实惠