具有搜索功能的Excel-Hyperlink

时间:2013-03-07 06:23:52

标签: excel

Excel - 我希望能够单击工作表1上的单元格并将它带到工作表2中的单元格。现在我不想要一个简单的超链接,我需要工作表2中的单元格找到。例如,我单击包含单词“start”的单元格A1,单击它后,我将使用相同的短语“start”进入表单2中的单元格。现在在表2中,这可以是单元格A1或A4或A57。如果它改变了该列中的位置,我希望找到它。基本上我需要一个带有find函数的超链接。

1 个答案:

答案 0 :(得分:3)

您可以使用Worksheet_FollowHyperlink VBA事件在点击链接后移动选择。

将常规超链接添加到所需目标表单上的任何单元格

将此代码添加到源工作表模块

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    Dim rngDest As Range
    Dim shDest As Worksheet
    Dim cl As Range

    Set shDest = ActiveSheet
    Set rngDest = shDest.Range("A:A") ' <--- change this to your target search range
    With rngDest
        Set cl = .Find(Target.Range.Cells(1, 1).Value, .Cells(.Rows.Count, .Columns.Count), xlValues, xlWhole, xlByRows, xlNext)
        If Not cl Is Nothing Then
            cl.Select
        Else
            ' value not found, return to original sheet
            Target.Range.Worksheet.Activate
            MsgBox Target.Range.Cells(1, 1).Value & " not found", vbOKOnly, "Not Found"
        End If
    End With

End Sub