Iv'e сделал несколько макросов, которые могут пригодиться:
Мой вариант использования был 5000 ссылок на изображения, каждое имя изображения было номером изображения, т.е. 2345.jpg
Мне нужно было превратить number.jpg в гиперссылку на папку по тому же пути, что и лист.
Функция удаления удобна, чтобы полностью изменить процесс.
Для использования: измените имя папки, и если вам нужно изменить, введите регулярное выражение имени файла.
Выделите ячейки, необходимые для запуска макроса. Вы можете прикрепить макрос к кнопке для удобства.
Sub addHyperlinkFormula()
Folder = "Images/"
For Each cell In Intersect(Selection, ActiveSheet.UsedRange)
If cell <> "" Then
Filename = cell.Value
Formula = "=HYPERLINK(""" & Folder & Filename & """,""" & Filename & """)"
cell.Formula = Formula
End If
Next cell
End Sub
Sub removeHyperlinkFormula()
'this regex is for 4235435.jpg
RegexPattern = "([0-9]+\.jpg)"
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = RegexPattern
regex.Global = True
For Each cell In Intersect(Selection, ActiveSheet.UsedRange)
If cell <> "" Then
Set allMatches = regex.Execute(cell.Formula)
If allMatches.Count <> 0 Then
result = allMatches.Item(0).submatches.Item(0)
cell.Value = result
cell.Font.Underline = xlUnderlineStyleNone
cell.Font.Color = vbBlack
End If
End If
Next cell
End Sub