Страница 1 из 1

MS Excel. Как "вытащить" гиперссылки из ячеек

СообщениеДобавлено: 02 окт 2012 10:10, Вт
UncleFather
Задача:

В книге MS Excel имеется столбец (или просто разбросанные ячейки), значением ячеек которого являются гиперссылки. На экране мы видим лишь связанный с гиперссылкой текст и, только если навести курсор на конкретную гиперссылку, можно увидеть, собственно, сам адрес (url) куда эта гиперссылка ведет:
01.JPG


Необходимо в соседний столбец вывести сами адреса (url) гиперссылок.
На удивление, в самом Microsoft Excel нет такой встроенной функции. Обратная (та, которая формирует гиперссылки) есть - "Гиперссылка":
02.JPG
02.JPG (30.9 КБ) Просмотров: 8197


а вот так, чтобы из гиперссылки вытянуть url - такой функции нет.


Решение:


Поскольку встроенной функции не имеется, то воспользуемся макросами Visual Basic for Applications (VBA).

Создаем новый макрос:
Код: Выделить всё
With ActiveSheet
      For I = 1 To .Hyperlinks.Count
            .Hyperlinks(I).Range.Offset(0,1).Value = .Hyperlinks(I).Address
      Next I
End With


Этот макрос просматривает весь активный лист на предмет наличия гиперссылок и вставляет url гиперссылки в ячейку справа от самой гиперссылки:
03.JPG