Программно перебрать гиперссылки только в определённом диапазоне — Visual Basic(Бейсик)

Private Sub objectHyperlink()
    Dim iSource As Range, iHyperlink As Hyperlink, iText$
    Set iSource = ThisWorkbook.Worksheets(1).Range("A1:C1000")
 
    For Each iHyperlink In iSource.Hyperlinks
        With iHyperlink
             iText = "Cell Value : " & CStr(.Range.Value)
             iText = iText & vbLf & "Name : " & .Name
             iText = iText & vbLf & "Address : " & .Address
             iText = iText & vbLf & "SubAddress : " & .SubAddress
             'iText = iText & vbLf & "TextToDisplay : " & .TextToDisplay
             'iText = iText & vbLf & "ScreenTip : " & .ScreenTip
             iText = "В ячейке " & .Range.Address & _
             " находится гиперссылка :" & String(2, 10) & iText
        End With
        MsgBox iText, , ""
    Next
End Sub
Для того, чтобы перебрать гиперссылки, созданные с помощью стандартной функции рабочего листа =ГИПЕРССЫЛКА(), используйте поиск (т.е. методы Find и FindNext)
Да, и обратите внимание на то, что свойства TextToDisplay и ScreenTip появились только в Excel 2000

Leave a Comment