Найти в Дзене

📌 VBA Excel: примеры решений. Как автоматически удалить гиперссылки и восстановить форматирование

Оглавление

Необходимость удаления от гиперссылок в документе может быть вызвана рядом причин. В качестве основных отметим:

  • предотвращение случайных нажатий;
  • удаление устаревшей информации;
  • оптимизация книги Excel.
Безусловно удалить пару ссылок в документе не составит труда. Но если таких ссылок ни одна и ни две...

О том, как автоматизировать данный процесс и ни утруждать себя рутинной работой рассмотрим сегодня в обзоре.

Для удобства поиска нужного материала у нас на канале есть удобный рубрикатор, а все видео предыдущих уроков также доступны на youtube (ссылка внизу поста и в описании канала)
Для удобства поиска нужного материала у нас на канале есть удобный рубрикатор, а все видео предыдущих уроков также доступны на youtube (ссылка внизу поста и в описании канала)
VBA Excel: примеры решений. Как автоматически удалить гиперссылки и восстановить форматирование
VBA Excel: примеры решений. Как автоматически удалить гиперссылки и восстановить форматирование

📢 Файл с примером размещен в конце статьи 🔽

-3

Рассмотренный макрос обеспечит эффективное удаление гиперссылок и восстановление форматирования текста в выбранном диапазоне, предоставляя пользователю удобный и автоматизированный инструмент.

▶️ Пример исходных данных

Для целей данного примера создадим на листе ряд гиперссылок которые требуется удалить:

Пример исходных данных
Пример исходных данных

▶️ Удаление гиперссылок из выбранного пользователем диапазона (пример макроса)

Для реализации поставленной задачи применим макрос:

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

▶️ Краткое описание

🔘 Запрос пользовательского выбора:

При выполнении макроса пользователь должен выбрать диапазон ячеек, содержащих гиперссылки, с которыми будет произведена обработка:

InputBox: Запрос пользовательского выбора
InputBox: Запрос пользовательского выбора

🔘 Отключение отображения изменений на экране:

Операция Application.ScreenUpdating = False используется для временного отключения обновления экрана, что улучшает производительность и предотвращает мерцание экрана при выполнении макроса.

🔘 Определение используемого диапазона в активном листе:

Set my_URange = Application.ActiveSheet.UsedRange определяет используемый диапазон на активном листе.

🔘 Проход по каждой гиперссылке в выбранном диапазоне: For Each my_Link In my_WorkRange.Hyperlinks запускает цикл для каждой гиперссылки в выбранном пользователем диапазоне.

🔘 Обработка каждой гиперссылки:

  • создается временный диапазон my_TempRange для копирования и восстановления форматирования.
  • содержимое гиперссылки копируется во временный диапазон.
  • гиперссылка удаляется из исходного диапазона.
  • изменяется размер временного диапазона и копируется форматирование обратно в исходный диапазон.
  • очищается временный диапазон, а форматирование текста сбрасывается на предустановленные значения.

🔘 Включение отображения изменений на экране: Application.ScreenUpdating = True включает обновление экрана после завершения макроса.

▶️ Тестируем результат

Напомним, что для вызова макроса вы можете использовать один из наиболее приемлемых способов:

 Удаление гиперссылок и восстановление форматирования текста в выбранном диапазоне,
Удаление гиперссылок и восстановление форматирования текста в выбранном диапазоне,

В результате все гиперссылки с указанного диапазона удалены! 🤗

🙌 Оставайся с нами на связи и узнавай больше о других методах и приемах работы в Excel:

Excel на ИЗИ
It's Moskovskaya_Excel на ИЗИ - YouTube
Примеры макросов VBA Excel | Excel на ИЗИ: ✅ Приемы эффективной работы в Microsoft Excel | Дзен
Справочные материалы VBA | Excel на ИЗИ: ✅ Приемы эффективной работы в Microsoft Excel | Дзен

СКАЧАТЬ ПРИМЕР 🔽

Как автоматически удалить гиперссылки и восстановить форматирование.bas