У меня есть рабочая тетрадь с 12 листами, по одному на каждый месяц, с именами JAN, FEB и т.д.

У меня есть гиперссылка в ячейке B2 JAN, которая переходит на ячейку B200 JAN. Я хотел бы скопировать эту гиперссылку на все другие листы, но когда я делаю область действия гиперссылки, не меняется на новый лист, она все равно ссылается на JAN

Итак, как я могу скопировать гиперссылку с одного листа на другой, чтобы ссылка ссылалась на местоположение на новом листе, а не на лист, где была создана ссылка

Спасибо

1 ответ1

1
Sub LocalizeAllHyperlinks()
Dim sh As Worksheet
Dim lnk As Hyperlink
For Each sh In Sheets
    For Each lnk In sh.Hyperlinks
        lnk.SubAddress = "'" & sh.Name & "'!" & Split(lnk.SubAddress, "!")(1)
        ' lnk.TextToDisplay = lnk.SubAddress
    Next
Next
End Sub

Этот подпункт локализует ВСЕ гиперссылки в рабочей книге на рабочие листы, которые они хранят без каких-либо проверок. Все гиперссылки, кроме ссылок на одну ячейку в текущей книге, будут повреждены!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .