Бывает так, что прайс лист поставщиков содержит ссылку на фото товара в ячейке, что делать чтобы извлечь адрес гиперссылки из текста в указанной ячейке.
Создаём макрос VBA в эксель для извлечения URL из текста в ячейках
Открываем документ Excel, запускаем редактор макросов VBA при помощи комбинации клавиш Alt+F11, и создаём новый модуль в меню: Insert > Module
Код модуля:
Public Function ИЗВЛЕЧЬССЫЛКУ(ГИПЕРССЫЛКА As Range) As String ИЗВЛЕЧЬССЫЛКУ = ГИПЕРССЫЛКА.Hyperlinks.Item(1).Address End Function
Сохраняем книгу в xslx с поддержкой макросов, затем, указываем в ячейке напротив извлекаемой =ИЗВЛЕЧЬССЫЛКУ(A1); где А1 — ячейка, где в тексте содержится ссылка.
Можно клонировать, размножить выполнение макроса на остальные строки в столбцах в книге.
UPD: 15.12.2020
В некоторых версиях эксель есть проблема при написании макрона в отображении кирилических символов в строке макроса, потому мы решили написать версию формулы на латинском языке:
Public Function GetLink(Link As Range) As String GetLink = Link.Hyperlinks.Item(1).Address End Function