Добавить строку в гиперссылки
- Первый код изменяет адреса гиперссылок всех ячеек на указанном листе, а второй изменяет только адреса гиперссылок в указанном столбце рабочего листа.
- Настройте значения в разделе констант соответствующим образом.
- Оператор
If
проверяет, была ли уже изменена текущая гиперссылка.
Код
Option Explicit
' For the whole sheet:
Sub addTailSheet()
' Keyboard Shortcut: Ctrl+Shift+H
Const SheetName As String = "Sheet1"
Const TailCell As String = "H1"
Dim ws As Worksheet
Dim hyp As Hyperlink
Dim Tail As String
Set ws = ThisWorkbook.Worksheets(SheetName)
With ws
Tail = .Range(TailCell).Value
For Each hyp In .Hyperlinks
If Right(hyp.Address, Len(Tail)) <> Tail Then
hyp.Address = hyp.Address & Tail
End If
Next
End With
MsgBox "Hyperlinks modified."
End Sub
' For a column:
Sub addTailColumn()
' Keyboard Shortcut: Ctrl+Shift+H
Const SheetName As String = "Sheet1"
Const TailCell As String = "H1"
Const TailColumn As Variant = "C" ' e.g. "C" or 3
Dim ws As Worksheet
Dim hyp As Hyperlink
Dim Tail As String
Set ws = ThisWorkbook.Worksheets(SheetName)
With ws.Columns(TailColumn)
Tail = .Parent.Range(TailCell).Value
For Each hyp In .Hyperlinks
If Right(hyp.Address, Len(Tail)) <> Tail Then
hyp.Address = hyp.Address & Tail
End If
Next
End With
MsgBox "Hyperlinks modified."
End Sub