Хитрости »
30 Май 2011 156264 просмотров
Как массово изменить гиперссылки?
В этой статье я покажу как можно быстро и качественно изменить адреса гиперссылок на листе Excel.
Существуют ситуации, когда на листе есть много гиперссылок(если еще на знакомы с гиперссылками — Что такое гиперссылка?) на различные папки или интернет ресурсы. И иногда случаются ситуации когда адреса этих гиперссылок надо поменять. Как правило это происходит если либо домен сменился, либо на сервере добавилась директория и эти изменения надо отразить в гиперссылках, либо все просто было перемещено в другую папку. Для примера возьмем такие исходные данные: надо заменить текст ссылки .excel_vba на текст excel-vba.
Прежде чем начать замену необходимо еще определить каким способом установлена гиперссылка. Если установлена через формулу ГИПЕРССЫЛКА(HYPERLINK), то все просто:
- выделяем диапазон с гиперссылками;
- жмем Ctrl+H.
- Найти: .excel_vba
- Заменить на: excel-vba
- Жмем кнопочку «Параметры» и устанавливаем Область поиска — Формулы и снимаем галочку «Ячейка целиком«
- Жмем «Заменить все«
Теперь адреса ссылок должны поменяться.
Все гораздо сложнее, если гиперссылки были созданы через стандартное меню: правый клик мыши на ячейке — Гиперссылка. Тут фокус с заменой через Ctrl+H не пройдет. В таких случаях придется прибегнуть к помощи VBA(Visual Basic for Applications) или как еще называют эти коды — макросы. Текст такого макроса:
Sub Replace_Hyperlink() Dim rCell As Range, rRange As Range, sWhatRep As String, sRep As String On Error Resume Next Set rRange = Application.InputBox("Укажите диапазон для замены", "Выбор данных", Type:=8) If rRange Is Nothing Then Exit Sub sWhatRep = InputBox("Что меняем?", "Ввод данных", ".excel_vba") sRep = InputBox("На что меняем?", "Ввод данных", "excel-vba") If sWhatRep = "" Then Exit Sub If sRep = "" Then If MsgBox("Хотите заменить " & sWhatRep & " на пусто?", vbCritical + vbYesNo, "Предупреждение") = vbNo Then Exit Sub End If Application.ScreenUpdating = 0 For Each rCell In rRange If rCell.Hyperlinks.Count > 0 Then If rCell.Hyperlinks(1).Address = rCell.Value Then rCell = Replace(rCell.Value, sWhatRep, sRep) End If If rCell.Hyperlinks(1).Address <> "" Then rCell.Hyperlinks(1).Address = Replace(rCell.Hyperlinks(1).Address, sWhatRep, sRep) End If If rCell.Hyperlinks(1).SubAddress <> "" Then rCell.Hyperlinks(1).SubAddress = Replace(rCell.Hyperlinks(1).SubAddress, sWhatRep, sRep) End If End If Next rCell Application.ScreenUpdating = 1 End Sub
Как все это использовать:
- создаем стандартный модуль и помещаем в него код макроса выше
- жмем Alt+F11 и выбираем макрос Replace_Hyperlink (или создаем кнопку для вызова макроса на листе)
- в первом диалоговом окне указываем в каком диапазоне надо найти гиперссылки и заменить в них адрес
- во втором диалоговом окне указываем какой текст заменить
- в третьем диалоговом окне указываем на что заменить указанный в первом окне текст
Примерно так же можно заменить гиперссылки в объектах на листе(например, картинках и кнопках):
Sub Replace_Hyperlink_inShape() Dim oSh As Shape, sWhatRep As String, sRep As String Dim s As String sWhatRep = InputBox("Что меняем?", "Ввод данных", "www.excel-vba.com") sRep = InputBox("На что меняем?", "Ввод данных", "www.excel-vba.ru") On Error Resume Next For Each oSh In ActiveSheet.Shapes s = "" s = oSh.Hyperlink.Address If s <> "" Then oSh.Hyperlink.Address = Replace(oSh.Hyperlink.Address, sWhatRep, sRep) End If Next End Sub
Данные код работает почти так же как и предыдущий:
- создаем стандартный модуль и помещаем в него код макроса выше
- жмем Alt+F11 и выбираем макрос Replace_Hyperlink_inShape (или создаем кнопку для вызова макроса на листе)
- в первом диалоговом окне указываем какой текст заменить
- во втором диалоговом окне на что заменить указанный в первом окне текст
Гиперссылки всех объектов на листе будут изменены. Если у объекта нет гиперссылки — объект будет пропущен.
Чтобы
заменить гиперссылки только в выделенных объектах
необходимо строку
For Each oSh In ActiveSheet.Shapes
заменить на такую:
For Each oSh In Selection.ShapeRange
тогда надо будет выделить объекты на листе, для которых необходимо заменить гиперссылки, и запустить макрос.
Скачать пример
Пример замены гиперссылок.xls (58,0 KiB, 11 337 скачиваний)
Так же см.:
Что такое гиперссылка?
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика
Предположим, у вас есть несколько интерактивных гиперссылок на листе, и теперь вы хотите преобразовать эти гиперссылки в обычный текст, есть ли у вас какие-нибудь полезные приемы для решения этой задачи? Теперь в этом руководстве представлены некоторые приемы, позволяющие быстро выполнить задание в Excel.
Преобразование гиперссылки в обычный текст с помощью меню правой кнопки мыши
Преобразование гиперссылки в обычный текст с помощью VBA
Преобразование гиперссылки в обычный текст из выделения/рабочего листа/книги с помощью Kutools for Excel
Преобразование гиперссылки в обычный текст с помощью меню правой кнопки мыши
В Excel вы можете использовать контекстное меню, чтобы преобразовать интерактивные гиперссылки в обычный текст.
Выберите гиперссылки, которые вы хотите преобразовать, и щелкните правой кнопкой мыши, чтобы отобразить контекстное меню, затем выберите Удалить гиперссылки вариант от него. Смотрите скриншот:
Теперь выбранные гиперссылки преобразованы в обычный текст.
Примечание: В Excel 2007 вы можете удалять только одну гиперссылку за раз. Чтобы удалить несколько гиперссылок, вам нужно повторить этот метод много раз.
Преобразование гиперссылки в обычный текст с помощью VBA
Если вы хотите использовать код VBA для решения задачи, вы можете сделать следующие шаги:
1. Нажмите F11 + Альт ключи одновременно, чтобы открыть Microsoft Visual Basic для приложений окно.
2. Нажмите Вставить > Модули показать новый Модули вдова, а затем вставьте ниже код VBA в Модули окно.
VBA: преобразование гиперссылок в простой текст.
Sub DeleteHyperlink()
Cells.Hyperlinks.Delete
End Sub
3. Нажмите F5 ключ или щелкните Run кнопку для выполнения этого VBA, тогда все гиперссылки на всем листе были преобразованы в обычный текст.
Примечание: С помощью этого VBA все гиперссылки на текущем листе будут преобразованы в обычный текст.
Преобразование гиперссылки в обычный текст из выделения/рабочего листа/книги с помощью Kutools for Excel
Если у вас есть Kutools for Excel, вы можете использовать его Удаление гиперссылок без потери форматирования утилита для преобразования гиперссылок из выделенного, активного листа, выбранных листов или всей книги.
После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:
Примените утилиту, нажав Кутулс > Ссылка > Удаление гиперссылок без потери форматирования, затем выберите нужный вариант. Смотрите скриншоты:
Возможно, вас заинтересует эта утилита:
Относительные статьи:
- Как удалить определенный / конкретный символ из ячейки в Excel?
- Как удалить формы линий в Excel?
- Как найти и разорвать внешние ссылки в Excel?
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (0)
Оценок пока нет. Оцените первым!
На чтение 3 мин. Просмотров 469 Опубликовано 21.05.2021
Предположим, у вас есть несколько интерактивных гиперссылок на листе, и теперь вы хотите преобразовать эти гиперссылки в обычный текст, есть ли у вас какие-нибудь полезные приемы для решения этой задачи? Теперь в этом руководстве представлены некоторые приемы для быстрого выполнения задания в Excel.
Преобразование гиперссылки в простой текст с помощью меню, вызываемого правой кнопкой мыши
Преобразование гиперссылки в обычный текст с помощью VBA
Преобразование гиперссылки в простой текст из выделенного/рабочего листа/книги с помощью Kutools for Excel
Содержание
- Преобразование гиперссылки в обычный текст с помощью контекстного меню
- Преобразование гиперссылки в обычный текст с помощью VBA
- Преобразование гиперссылки в обычный текст из выделенного/рабочего листа/книги с помощью Kutools for Excel
- Преобразование гиперссылок
- Относительные статьи:
В Excel вы можете использовать меню, вызываемое правой кнопкой мыши, для преобразования интерактивных гиперссылок в обычный текст.
Выберите гиперссылки, которые нужно преобразовать, и щелкните правой кнопкой мыши, чтобы отобразить контекстное меню, затем выберите в нем параметр Удалить гиперссылки . См. Снимок экрана:
Теперь выбранные гиперссылки преобразованы в простой текст.
Примечание: В Excel 2007 вы можете удалять только одну гиперссылку за раз. Для удаления нескольких гиперссылок вам необходимо повторить этот метод много раз.
Если вы хотите использовать код VBA для решения задачи, вы можете выполнить следующие шаги:
1. Одновременно нажмите клавиши F11 + Alt , чтобы открыть окно Microsoft Visual Basic для приложений .
2. Нажмите Вставить > Module , чтобы отобразить новую вдову Module , а затем вставьте ниже код VBA в Модуль .
VBA: преобразование гиперссылок в простой текст.
3. Нажмите клавишу F5 или нажмите кнопку Выполнить , чтобы выполнить этот VBA, тогда все гиперссылки на всем листе будут преобразованы в обычный текст.
Примечание. С этим VBA все гиперссылки на текущем листе будут преобразованы в обычный текст.
Если у вас есть Kutools for Excel , вы можете использовать его Удалить гиперссылки без потери форматирования для преобразования гиперссылок из выделенного, активного листа, выбранных листов или всю книгу.
После бесплатной установки Kutools for Excel, сделайте следующее:
Примените утилиту, нажав Kutools > Ссылка > Удалить гиперссылки без потери форматирования , затем выберите вариант как y тебе нужно. См. Скриншоты:
Возможно, вас заинтересует эта утилита:
Преобразование гиперссылок
|
Kutools for Excel ‘s Конвертировать Гиперссылки могут быстро заменить адреса гиперссылок содержимым ячеек и наоборот. |
Перейти к загрузке |
Относительные статьи:
- Как удалить определенный/определенный символ из ячейки в Excel?
- Как удалить линии в Excel?
- Как найти и разорвать внешние ссылки в Excel?
Содержание
- Exceltip
- Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки
- Гиперссылка в Excel — создание, изменение и удаление
- Добавление гиперссылки напрямую в ячейку
- Привязка гиперссылок к объектам рабочего листа
- Добавление гиперссылок с помощью формулы ГИПЕРССЫЛКА
- Добавление гиперссылок с помощью макросов
- Виды гиперссылок
- Изменить гиперссылку
- Удалить гиперссылку
- Пакетное переименование сразу нескольких гиперссылок в Excel
- Переименование гиперссылок на основе текста в другом столбце
- Пакетное сотрудничество n преобразовать гиперссылки в текстовое содержимое или извлечь гиперссылки из ячеек
- Переименуйте все гиперссылки с одинаковым отображаемым текстом
- Загрузить файл образца
- Другие операции (статьи) Связанные К гиперссылке
- Как массово изменить гиперссылки?
Exceltip
Блог о программе Microsoft Excel: приемы, хитрости, секреты, трюки
Гиперссылки автоматизируют рабочий лист Excel за счет добавления возможности в один щелчок мыши переходить на другой документ или рабочую книгу, вне зависимости находиться ли данный документ у вас на жестком диске или это интернет страница.
Существует четыре способа добавить гиперссылку в рабочую книгу Excel:
1) Напрямую в ячейку
2) C помощью объектов рабочего листа (фигур, диаграмм, WordArt…)
3) C помощью функции ГИПЕРССЫЛКА
4) Используя макросы
Чтобы добавить гиперссылку напрямую в ячейку, щелкните правой кнопкой мыши по ячейке, в которую вы хотите поместить гиперссылку, из раскрывающегося меню выберите Гиперссылка
Либо, аналогичную команду можно найти на ленте рабочей книги Вставка -> Ссылки -> Гиперссылка.
Вы также можете добавить гиперссылку к некоторым объектам рабочей книги: картинкам, фигурам, надписям, объектам WordArt и диаграммам. Чтобы создать гиперссылку, щелкните правой кнопкой мыши по объекту, из выпадающего меню выберите Гиперссылка.
Либо, аналогичным способом, как добавлялась гиперссылка в ячейку, выделить объект и выбрать команду на ленте. Другой способ создания – сочетание клавиш Ctrl + K – открывает то же диалоговое окно.
Обратите внимание, щелчок правой кнопкой мыши на диаграмме не даст возможность выбора команды гиперссылки, поэтому выделите диаграмму и нажмите Ctrl + K.
Гуперссылка может быть добавлена с помощью функции ГИПЕРССЫЛКА, которая имеет следующий синтаксис:
Адрес указывает на местоположение в документе, к примеру, на конкретную ячейку или именованный диапазон. Адрес может указывать на файл, находящийся на жестком диске, или на страницу в интернете.
Имя определяет текст, который будет отображаться в ячейке с гиперссылкой. Этот текст будет синего цвета и подчеркнут.
Например, если я введу в ячейку формулу =ГИПЕРССЫЛКА(Лист2!A1; «Продажи»). На листе выглядеть она будет следующим образом и отправит меня на ячейку A1 листа 2.
Чтобы перейти на страницу интернет, функция будет выглядеть следующим образом:
=ГИПЕРССЫЛКА(«https://exceltip.ru/»;»Перейти на Exceltip»)
Чтобы отправить письмо на указанный адрес, в функцию необходимо добавить ключевое слово mailto:
Также гиперссылки можно создать с помощью макросов VBA, используя следующий код
где,
SheetName: Имя листа, где будет размещена гиперссылка
Range: Ячейка, где будет размещена гиперссылка
Address!Range: Адрес ячейки, куда будет отправлять гиперссылка
Name: Текст, отображаемый в ячейке.
При добавлении гиперссылки напрямую в ячейку (первый способ), вы будете работать с диалоговым окном Вставка гиперссылки, где будет предложено 4 способа связи:
1) Файл, веб-страница – в навигационном поле справа указываем файл, который необходимо открыть при щелчке на гиперссылку
2) Место в документе – в данном случае, гиперссылка отправит нас на указанное место в текущей рабочей книге
3) Новый документ – в этом случае Excel создаст новый документ указанного расширения в указанном месте
4) Электронная почта – откроет окно пустого письма, с указанным в гиперссылке адресом получателя.
Последними двумя способами на практике ни разу не пользовался, так как не вижу в них смысла. Наиболее ценными для меня являются первый и второй способ, причем для гиперссылки места в текущем документе предпочитаю использовать одноименную функцию, как более гибкую и настраиваемую.
Изменить гиперссылку можно, щелкнув по ней правой кнопкой мыши. Из выпадающего меню необходимо выбрать Изменить гиперссылку
Аналогичным способом можно удалить гиперссылку. Щелкнув правой кнопкой мыши и выбрав из всплывающего меню Удалить гиперссылку.
Источник
Как мы знаем, гиперссылки в Excel состоят из двух частей: одна – это адрес гиперссылки, а другая – отображаемый текст. В некоторых случаях может потребоваться переименовать весь отображаемый текст гиперссылок. Как быстро справиться с этой работой? В этом руководстве представлены два метода переименования гиперссылок в двух разных случаях:
1 Переименование гиперссылок на основе текста в другом столбце
2 Переименуйте все гиперссылки с одинаковым отображаемым текстом
Загрузить файл образца
Если вы хотите изменить отображаемый текст гиперссылок на основе значений другого столбца, вы можете использовать формулу ниже
В формуле A1 – это расположение адреса, B1 – отображаемый текст.
Нажмите клавишу Enter и перетащите маркер автозаполнения по ячейкам, чтобы применить эту формулу.
Возможно, вас заинтересует эта утилита:
Если вы хотите заменить содержимое ячейки на адреса гиперссылок, вы можете выбрать параметр Содержимое ячейки заменить адреса гиперссылок в утилите Конвертировать гиперссылки в Kutools for Excel , если вы хотите извлечь все гиперссылки из диапазона ячеек, выберите параметр Адреса гиперссылок заменяют содержимое ячейки . Нажмите, чтобы получить 30-дневную бесплатную пробную версию! Kutools for Excel: с более чем 300 удобными надстройками Excel, которые можно бесплатно попробовать без ограничений в течение 30 дней.
Если вы хотите переименовать все гиперссылки с одинаковым отображаемым текстом, вы можете использовать функцию «Найти и заменить». р>
1. Выделите все гиперссылки, отображаемый текст которых вы хотите изменить, и нажмите Ctrl + H, чтобы открыть диалоговое окно Найти и заменить .
2. Нажмите кнопку Параметры , чтобы развернуть диалоговое окно, затем нажмите Формат .
3. Затем в диалоговом окне Найти формат на вкладке Шрифт выберите Single из раскрывающегося списка подчеркивание . Нажмите OK , чтобы вернуться в диалоговое окно Найти и заменить .
4. Введите * в текстовое поле Найти что , затем в текстовое поле Заменить на введите нужный текст для отображения. Нажмите Заменить все и нажмите OK > Закрыть , чтобы закрыть все диалоговые окна.
Теперь все гиперссылки были переименованы в тот же текст.
Загрузить файл образца
Щелкните, чтобы загрузить файл образца
Быстро создать гиперссылку на конкретный рабочий лист в другой книге
В Excel мы можем создавать гиперссылка на веб-адрес, чтобы быстро открыть веб-сайт, щелкнув его, но пробовали ли вы когда-нибудь создать гиперссылку на конкретный рабочий лист в другой книге? В этой статье вы можете найти решение.
Создать гиперссылку на диаграмму в Excel
В Excel создать гиперссылку легко для большинства пользователей, но пробовали ли вы когда-нибудь создать гиперссылку на диаграмму в Excel, что означает, что нужно щелкнуть значение, а затем перейти к диаграмме на другом листе? Как правило, нет возможности напрямую создать гиперссылку на диаграмму, но здесь, в этой статье, я могу представить интересный способ ее решения.
Запретить/отключить автоматические гиперссылки в Excel
Как все мы знаем, Excel автоматически создает интерактивные гиперссылки, когда мы вводим веб-адреса в ячейки. Может быть, иногда это немного раздражает. Сегодня я расскажу вам несколько быстрых приемов, которые помогут предотвратить автоматические гиперссылки в Excel.
Преобразование нескольких адресов электронной почты в гиперссылки в Excel
Если у вас есть список адресов электронной почты в виде обычного текста на листе, и теперь вы хотите преобразовать эти адреса электронной почты в гиперссылки, которые можно отправлять по электронной почте, щелкая адреса. Конечно, вы можете преобразовать их в адреса электронной почты с гиперссылками, но этот метод будет утомительным, если необходимо преобразовать несколько адресов. В этой статье я расскажу о некоторых хороших приемах для решения этой задачи.
Дополнительные статьи о создании гиперссылок
Инструменты повышения производительности Excel -> ->
Источник
В этой статье я покажу как можно быстро и качественно изменить адреса гиперссылок на листе Excel.
Существуют ситуации, когда на листе есть много гиперссылок(если еще на знакомы с гиперссылками — Что такое гиперссылка?) на различные папки или интернет ресурсы. И иногда случаются ситуации когда адреса этих гиперссылок надо поменять. Как правило это происходит если либо домен сменился, либо на сервере добавилась директория и эти изменения надо отразить в гиперссылках, либо все просто было перемещено в другую папку. Для примера возьмем такие исходные данные: надо заменить текст ссылки .excel_vba на текст excel-vba .
Прежде чем начать замену необходимо еще определить каким способом установлена гиперссылка. Если установлена через формулу ГИПЕРССЫЛКА (HYPERLINK) , то все просто:
- выделяем диапазон с гиперссылками;
- жмем Ctrl + H .
- Найти: .excel_vba
- Заменить на: excel-vba
- Жмем кнопочку «Параметры» и устанавливаем Область поиска — Формулы и снимаем галочку «Ячейка целиком«
- Жмем «Заменить все«
Теперь адреса ссылок должны поменяться.
Все гораздо сложнее, если гиперссылки были созданы через стандартное меню: правый клик мыши на ячейке — Гиперссылка. Тут фокус с заменой через Ctrl + H не пройдет. В таких случаях придется прибегнуть к помощи VBA(Visual Basic for Applications) или как еще называют эти коды — макросы. Текст такого макроса:
Sub Replace_Hyperlink() Dim rCell As Range, rRange As Range, sWhatRep As String, sRep As String On Error Resume Next Set rRange = Application.InputBox(«Укажите диапазон для замены», «Выбор данных», Type:=8) If rRange Is Nothing Then Exit Sub sWhatRep = InputBox(«Что меняем?», «Ввод данных», «.excel_vba») sRep = InputBox(«На что меняем?», «Ввод данных», «excel-vba») If sWhatRep = «» Then Exit Sub If sRep = «» Then If MsgBox(«Хотите заменить » & sWhatRep & » на пусто?», vbCritical + vbYesNo, «Предупреждение») = vbNo Then Exit Sub End If Application.ScreenUpdating = 0 For Each rCell In rRange If rCell.Hyperlinks.Count > 0 Then If rCell.Hyperlinks(1).Address = rCell.Value Then rCell = Replace(rCell.Value, sWhatRep, sRep) End If If rCell.Hyperlinks(1).Address <> «» Then rCell.Hyperlinks(1).Address = Replace(rCell.Hyperlinks(1).Address, sWhatRep, sRep) End If If rCell.Hyperlinks(1).SubAddress <> «» Then rCell.Hyperlinks(1).SubAddress = Replace(rCell.Hyperlinks(1).SubAddress, sWhatRep, sRep) End If End If Next rCell Application.ScreenUpdating = 1 End Sub
Как все это использовать:
- создаем стандартный модуль и помещаем в него код макроса выше
- жмем Alt + F11 и выбираем макрос Replace_Hyperlink (или создаем кнопку для вызова макроса на листе)
- в первом диалоговом окне указываем в каком диапазоне надо найти гиперссылки и заменить в них адрес
- во втором диалоговом окне указываем какой текст заменить
- в третьем диалоговом окне указываем на что заменить указанный в первом окне текст
Примерно так же можно заменить гиперссылки в объектах на листе(например, картинках и кнопках):
Sub Replace_Hyperlink_inShape() Dim oSh As Shape, sWhatRep As String, sRep As String Dim s As String sWhatRep = InputBox(«Что меняем?», «Ввод данных», «www.excel-vba.com») sRep = InputBox(«На что меняем?», «Ввод данных», «www.excel-vba.ru») On Error Resume Next For Each oSh In ActiveSheet.Shapes s = «» s = oSh.Hyperlink.Address If s <> «» Then oSh.Hyperlink.Address = Replace(oSh.Hyperlink.Address, sWhatRep, sRep) End If Next End Sub
Данные код работает почти так же как и предыдущий:
- создаем стандартный модуль и помещаем в него код макроса выше
- жмем Alt + F11 и выбираем макрос Replace_Hyperlink_inShape (или создаем кнопку для вызова макроса на листе)
- в первом диалоговом окне указываем какой текст заменить
- во втором диалоговом окне на что заменить указанный в первом окне текст
Гиперссылки всех объектов на листе будут изменены. Если у объекта нет гиперссылки — объект будет пропущен.
Чтобы заменить гиперссылки только в выделенных объектах необходимо строку
For Each oSh In ActiveSheet.Shapes
заменить на такую:
For Each oSh In Selection.ShapeRange
тогда надо будет выделить объекты на листе, для которых необходимо заменить гиперссылки, и запустить макрос.
Пример замены гиперссылок.xls (58,0 KiB, 11 252 скачиваний)
Статья помогла? Поделись ссылкой с друзьями!
Источник
Функция ДВССЫЛ в Excel предназначена для преобразования текстового представления ссылки на ячейку или диапазон к ссылочному типу данных и возвращает значение, которое хранится в полученной ссылке.
Примеры использования функции ДВССЫЛ в Excel
Поскольку функция ДВССЫЛ принимает ссылки в качестве текстовых строк, входные данные могут быть модифицированы для получения динамически изменяемых значений.
Ссылки на ячейки в Excel могут быть указаны в виде сочетания буквенного наименования столбца и цифрового номера строки (например, D5, то есть, ячейка в столбце D и строке с номером 5), а также в стиле RXCY, где:
- R – сокращенно от «row» (строка) – указатель строки;
- C – сокращенно от «column» (столбец) – указатель столбца;
- X и Y – любые целые положительные числа, указывающие номер строки и столбца соответственно.
Функция ДВССЫЛ может принимать текстовые представления ссылок любого из этих двух вариантов представления.
Как преобразовать число в месяц и транспонировать в Excel
Пример 1. Преобразовать столбец номеров месяцев в строку, в которой содержатся текстовые представления этих месяцев (то есть, транспонировать имеющийся список).
Вид таблицы данных:
Для получения строки текстовых представлений месяцев введем в ячейку B2 следующую формулу:
Функция ДВССЫЛ принимает аргумент, состоящий из текстового представления обозначения столбца (“A”) и номера столбца, соответствующего номеру строки, и формирует ссылку на ячейку с помощью операции конкатенации подстрок (символ “&”). Полученное значение выступает вторым аргументом функции ДАТА, которое возвращает дату с соответствующим номером месяца. Функция ТЕКСТ выполняет преобразование даты к требуемому значению месяца в виде текста.
Протянем данную формулу вдоль 1-й строки вправо, чтобы заполнить остальные ячейки:
Примечание: данный пример лишь демонстрирует возможности функции ДВССЫЛ. Для транспонирования данных лучше использовать функцию ТРАНСП.
Как преобразовать текст в ссылку Excel?
Пример 2. В таблице содержатся данные о покупках товаров, при этом каждая запись имеет свой номер (id). Рассчитать суммарную стоимость любого количества покупок (создать соответствующую форму для расчета).
Создадим форму для расчетов, в которой id записи могут быть выбраны из соответствующих значений в списках. Вид исходной и результативной таблицы:
В ячейке E2 запишем следующую формулу:
Функция ДВССЫЛ принимает в качестве аргумента текстовую строку, которая состоит из буквенного обозначения диапазона ячеек столбца столбца (“C:C”) и номера строки, определенного значениями, хранящимися в в ячейках F4 и G4 соответственно. В результате вычислений запись принимает, например, следующий вид: C2:C5. Функция СУММ вычисляет сумму значений, хранящихся в ячейках указанного диапазона.
Примеры вычислений:
Как вставить текст в ссылку на ячейку Excel?
Пример 3. В таблице хранятся данные об абонентах. Создать компактную таблицу на основе имеющейся, в которой можно получить всю информацию об абоненте на основе выбранного номера записи (id).
Вид исходной таблицы:
Создадим форму для новой таблицы:
Для заполнения ячеек новой таблицы данными, соответствующими выбранному из списка абоненту, используем следующую формулу массива (CTRL+SHIFT+ENTER):
Примечание: перед выполнение формулы необходимо выделить диапазон ячеек B16:E16.
В результате получим компактную таблицу с возможностью отображения записей по указанному номеру (id):
Особенности использования функции ДВССЫЛ в Excel
Функция имеет следующую синтаксическую запись:
=ДВССЫЛ(ссылка_на_текст;[a1])
Описание аргументов:
- ссылка_на_текст – обязательный аргумент, принимающий текстовую строку, содержащую текст ссылки, который будет преобразован к данным ссылочного типа. Например, результат выполнения функции =ДВССЫЛ(“A10”) эквивалентен результату выполнения записи =A10, и вернет значение, хранящееся в ячейке A10. Также этот аргумент может принимать ссылку на ячейку, в которой содержится текстовое представление ссылки. Например, в ячейке E5 содержится значение 100, а в ячейке A5 хранится текстовая строка “E5”. В результате выполнения функции =ДВССЫЛ(A5) будет возвращено значение 100.
- [a1] – необязательный для заполнения аргумент, принимающий значения логического типа:
- ИСТИНА – функция ДВССЫЛ интерпретирует текстовую строку, переданную в качестве первого аргумента, как ссылку типа A1. Данное значение используется по умолчанию (если аргумент явно не указан).
- ЛОЖЬ – первый аргумент функции должен быть указан в виде текстового представления ссылки типа R1C1.
Примечания:
- Если в качестве первого аргумента функции был передан текст, не содержащий ссылку или ссылка на пустую ячейку, функция ДВССЫЛ вернет код ошибки #ССЫЛКА!.
- Результат выполнения функции ДВССЫЛ будет пересчитан при любом изменении данных на листе и во время открытия книги.
- Если переданная в качестве первого аргумента ссылка в виде текста указывает на вертикальный диапазон ячеек с более чем 1048576 строк или горизонтальный диапазон с более чем 16384 столбцов, результатом выполнения функции будет код ошибки #ССЫЛКА!.
- Использование текстовых представлений внешних ссылок (ссылки на другие книги) приведет к возникновению ошибки #ССЫЛКА!, если требуемая книга не открыта в приложении Excel.