Активные гиперссылки в Excel
Обновление: 2023-04-23.
Пользователям, работающим с программой Microsoft Excel, нередко приходится оперировать со значительными объемами ссылок. Причем необходимо их вставить так, чтобы эти ссылки были активны. Когда гиперссылка активна, то переход на целевую страницу происходит с помощью одного клика левой клавиши мышки. По умолчанию для активации любой ссылки в одном поле программы Excel нужно нажать клавишу F2 с последующим нажатием Enter.
Такой подход может использоваться в том случае, если таблица Excel состоит всего из десятка строк. Но если счет начинает идти на сотни или тысячи строк, то на повторение этих однообразных действий может уйти огромное количество времени. В этом случае без составления специальной программы-макроса не обойтись, а написать его можно на языке VBA (Visual Basic), уже встроенном в программный пакет Microsoft Excel.
Как написать макрос VBA Excel
Не думайте, что мы будем заниматься написанием программы, листинг которой состоит более, чем из тысячи строк. Наоборот, код данного макроса отличается небольшой длиной, при этом макрос решает задачу преобразования всех гиперссылок, находящихся в столбце «С», код Range([с2], Range("с" & Rows.Count).End(xlUp)) в активные. Таким образом, после исполнения макроса все URL вебстраниц, помещенные в ячейки столбца «С», начиная со второй («С2»), станут активными.
Dim cell As Range, ra As Range: Application.ScreenUpdating = False
Set ra = Range([c2], Range("c" & Rows.Count).End(xlUp))
For Each cell In ra.Cells
If Len(cell) Then cell.Hyperlinks.Add cell, cell
Next cell
End Sub
Вариант макроса, который приведен выше, обладает еще одной полезной возможностью. По желанию пользователь может взять управление процессом в свои руки и указать требуемый столбец и ячейку, с которой гиперссылки начнут превращаться в активные. Мы понимаем, что далеко не каждый читатель горит желанием разбираться во всех деталях программного кода. Тогда смело используйте универсальную версию макроса, преобразующего гиперссылки в таблицах Microsoft Excel в той области, которую вы выделите. Код этого универсального макроса приводится ниже.
Dim cell As Range: Application.ScreenUpdating = False
For Each cell In Selection
If Len(cell) Then cell.Hyperlinks.Add cell, cell
Next cell
End Sub
Запуск макроса можно осуществлять по нажатию горячей клавиши, которую назначит пользователь. Делается это так: сначала нажимается комбинация клавиш Alt + F8, после чего появится окно. В нем нужно будет подсветить требуемый макрос. Затем нажмите на кнопку «Параметры», в новом окошке укажите любую букву и подтвердите выбор нажатием кнопки «ОК». Эта буква в сочетании с клавишей Ctrl будет сразу активировать макрос.
Код двух макросов
Скопируйте оба фрагмента кода и вставьте к себе в Excel.
Итак, проблема преобразования неактивных URL ссылок в таблице Excel в активные гиперссылки по одному нажатию клавиши отныне полностью решена!
Автор: Сергей Сморовоз.