Мы уже писали о том, что такое гиперссылка и как ее создать, в этой статье. Но бывает нужно получить саму ссылку из ячейки с гиперссылкой в Excel. Если таких ячеек очень много, даже больше 20, на мой взгляд, не стоит пытаться получить ссылку из ячейки вручную. Проще воспользоваться небольшим макросом. Приведу варианты решения такой задачи, все не так сложно:
Бывает, что вы скопировали адреса сайтов из списка в интернете, в большинстве случаев, при таком копировании наименование адреса неравно самому адресу:
Разберемся как вытащить гиперссылку из такой ячейки
Содержание
- Как вывести адрес ссылки для одной ячейки?
- Как получить ссылку из ячейки с гиперссылкой в Excel
- Похожие статьи
Как вывести адрес ссылки для одной ячейки?
Это несложно. Необходимо правой кнопкой мыши нажать на ячейку и выбрать Изменить гиперссылку.
В открывшемся окне вы можете скопировать ссылку из графы Адрес:
Конечно, для каждой ячейки из множества так не накопируешься, поэтому есть удобный способ — создать отдельную функцию для доставания адреса сайта или места на диске.
Если при нажатии на ячейку правой кнопкой мыши в появившемся окне нет кнопок Изменить гиперссылку, Открыть гиперссылку и т.д. Проверьте ту ли ячейку вы выбираете. Если ту, то в такой ячейке нет гиперссылки или она задана неверно.
Как получить ссылку из ячейки с гиперссылкой в Excel
На днях у меня возникла задача: нужно было вытащить ссылки более чем из 10 тыс ячеек. Не делать же такое вручную. Я сначала поискал решение в интернете и нашел отличное вариант. Публикую для своих читателей решение с прекрасного сайта. Для применения способа запишите текст, приведенный ниже в окно модуля VBA (Ctrl+F11). Если не знаете о чем я веду речь, советую прочитать статью про макросы.
Текст создаваемой функции будет следующий:
Function Получить_Ссылку(ByVal rCell As Range) As String Dim s As String If rCell.Hyperlinks.Count = 0 Then If Mid$(rCell.Formula, 2, 9) = "HYPERLINK" Then Получить_Ссылку= Mid$(rCell.Formula, 13, InStr(13, rCell.Formula, Chr(34)) - 13) Else Получить_Ссылку = "В ячейке нет гиперссылки!" End If Else s = rCell.Hyperlinks(1).SubAddress If s <> "" Then s = "#" & rCell.Hyperlinks(1).SubAddress Получить_Ссылку= rCell.Hyperlinks(rCell.Hyperlinks.Count).Address & s End If End Function
Теперь если начать записывать формулу, у вас будет появляться и эта функция тоже.
Конечно, она будет доступна и в меню функций.
Введите адрес ячейки как аргумент этой функции и протяните формулу на нужное количество ячеек. Все!
Удобно, еще раз спасибо Excel-vba.ru за отличный сайт.
@tachyglossus
Extract actual addresses from hyperlinks with VBA code
Press on the heading to get more possibilities and options.
Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
Click Insert> Module and paste the following code into the module window.
Sub Extracthyperlinks ()
‘Updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = «KutoolsforExcel»
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox («Range», xTitleId, WorkRng.Address, Type: =
For Each Rng In WorkRng
If Rng.Hyperlinks.Count> 0 Then
Rng.Value = Rng.Hyperlinks.Item (1) .Address
End If
Next
End Sub
Then press F5 when you press the key to run the code, it will bring up a dialog box for you to choose the hyperlinks that you want to extract the actual addresses from.
Then click OK and the selected cell contents will be converted to the real hyperlink addresses in the original range.
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис формулы и использование функции АДРЕС в Microsoft Excel. Чтобы узнать больше о работе с почтовыми адресами и создании почтовых наклеек, см. по ссылкам в разделе См. также.
Описание
Функцию АДРЕС можно использовать для получения адреса ячейки на листе по номерам строки и столбца. Например, функция АДРЕС(2;3) возвращает значение $C$2. Еще один пример: функция АДРЕС(77;300) возвращает значение $KN$77. Чтобы передать функции АДРЕС номера строки и столбца в качестве ее аргументов, можно использовать другие функции (например, функции СТРОКА и СТОЛБЕЦ).
Синтаксис
АДРЕС(номер_строки;номер_столбца;[тип_ссылки];[a1];[имя_листа])
Аргументы функции АДРЕС указаны ниже.
-
Номер_строки Обязательный аргумент. Номер строки, используемый в ссылке на ячейку.
-
Номер_столбца Обязательный аргумент. Номер столбца, используемый в ссылке на ячейку.
-
Тип_ссылки Необязательный аргумент. Задает тип возвращаемой ссылки.
Тип_ссылки |
Возвращаемый тип ссылки |
1 или опущен |
Абсолютный |
2 |
Абсолютная строка; относительный столбец |
3 |
Относительная строка; абсолютный столбец |
4 |
Относительный |
-
A1 Необязательный аргумент. Логическое значение, которое определяет тип ссылок: А1 или R1C1. При использовании ссылок типа А1 столбцы обозначаются буквами, а строки — цифрами. При использовании ссылок типа R1C1 и столбцы, и строки обозначаются цифрами. Если аргумент А1 имеет значение ИСТИНА или опущен, то функция АДРЕС возвращает ссылку типа А1; если этот аргумент имеет значение ЛОЖЬ, функция АДРЕС возвращает ссылку типа R1C1.
Примечание: Чтобы изменить тип ссылок, используемый Microsoft Excel, откройте вкладку Файл, а затем нажмите кнопку Параметры и выберите пункт Формулы. В группе Работа с формулами установите или снимите флажок Стиль ссылок R1C1.
-
Имя_листа Необязательный аргумент. Текстовое значение, определяющее имя листа, которое используется для формирования внешней ссылки. Например, формула =АДРЕС(1;1;;;»Лист2″) возвращает значение Лист2!$A$1. Если аргумент имя_листа отсутствует, имя листа не используется, и адрес, возвращаемый функцией, ссылается на ячейку текущего листа.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Формула |
Описание |
Результат |
=АДРЕС(2;3) |
Абсолютная ссылка |
$C$2 |
=АДРЕС(2;3;2) |
Абсолютная строка; относительный столбец |
C$2 |
=АДРЕС(2;3;2;ЛОЖЬ) |
Абсолютная строка; относительный столбец с типом ссылки R1C1 |
R2C[3] |
=АДРЕС(2;3;1;ЛОЖЬ;»[Книга1]Лист1″) |
Абсолютная ссылка на другую книгу и лист |
‘[Книга1]Лист1’!R2C3 |
=АДРЕС(2;3;1;ЛОЖЬ;»ЛИСТ EXCEL») |
Абсолютная ссылка на другой лист |
‘ЛИСТ EXCEL’!R2C3 |
Нужна дополнительная помощь?
Миндубаев Рамазан
Рубрика:
Поисковая оптимизация (SEO)
Часто для того, чтобы быстро выдрать структуру сайта, URL, мета-теги и т.д. встает задачу как это сделать быстро. Одно из решений сделать с помощью Excel.
Задача:
В Экселе имеется столбец в значениях ячеек есть строки с гиперссылками. Excel показывать только текстовое описание, саму гиперссылку видно, только при наведение курсора мыши, либо по щелчку правой кнопкой и нажатии «Гиперссылка».
Решение:
Необходимо в соседний столбец вывести URL гиперссылок.
В Microsoft Excel нет такой встроенной функции, либо я её не нашел =(
Поскольку встроенной функции не имеется, то можно использовать макрос Visual Basic for Applications (VBA).
Создаем макрос (название можно задать только в 1 слово)
Вставляем код, чтобы получилось вот так
Сам код
With ActiveSheet
For I = 1 To .Hyperlinks.Count
.Hyperlinks (I).Range.Offset (0,1).Value = .Hyperlinks (I).Address
Next I
End With
закрываем Visual Basic for Applications (VBA)
После выделяем все ячейки и жмем «Выполнить»
На выходе получаем в соседнем столбце все URL
Пользуйтесь.
Функция АДРЕС возвращает адрес определенной ячейки (текстовое значение), на которую указывают номера столбца и строки. К примеру, в результате выполнения функции =АДРЕС(5;7) будет выведено значение $G$5.
Примечание: наличие символов «$» в адресе ячейки $G$5 свидетельствует о том, что ссылка на данную ячейку является абсолютной, то есть не меняется при копировании данных.
Функция АДРЕС в Excel: описание особенностей синтаксиса
Функция АДРЕС имеет следующую синтаксическую запись:
=АДРЕС(номер_строки;номер_столбца;[тип_ссылки];[a1];[имя_листа])
Первые два аргумента данной функции являются обязательными для заполнения.
Описание аргументов:
- Номер_строки – числовое значение, соответствующее номеру строки, в которой находится требуемая ячейка;
- Номер_столбца – числовое значение, которое соответствует номеру столбца, в котором расположена искомая ячейка;
- [тип_ссылки] – число из диапазона от 1 до 4, соответствующее одному из типов возвращаемой ссылки на ячейку:
- абсолютная на всю ячейку, например — $A$4
- абсолютная только на строку, например — A$4;
- абсолютная только на столбец, например — $A4;
- относительная на всю ячейку, например A4.
- [a1] – логическое значение, определяющее один из двух типов ссылок: A1 либо R1C1;
- [имя_листа] – текстовое значение, которое определяет имя листа в документе Excel. Используется для создания внешних ссылок.
Примечания:
- Ссылки типа R1C1 используются для цифрового обозначения столбцов и строк. Для возвращения ссылок такого типа в качестве параметра a1 должно быть явно указано логическое значение ЛОЖЬ или соответствующее числовое значение 0.
- Стиль ссылок в Excel может быть изменен путем установки/снятия флажка пункта меню «Стиль ссылок R1C1», который находится в «Файл – Параметры – Формулы – Работа с Формулами».
- Если требуется ссылка на ячейку, которая находится в другом листе данного документа Excel, полезно использовать параметр [имя_листа], который принимает текстовое значение, соответствующее названию требуемого листа, например «Лист7».
Примеры использования функции АДРЕС в Excel
Пример 1. В таблице Excel содержится ячейка, отображающая динамически изменяемые данные в зависимости от определенных условий. Для работы с актуальными данными в таблице, которая находится на другом листе документа требуется получить ссылку на данную ячейку.
На листе «Курсы» создана таблица с актуальными курсами валют:
На отдельном листе «Цены» создана таблица с товарами, отображающая стоимость в долларах США (USD):
В ячейку D3 поместим ссылку на ячейку таблицы, находящейся на листе «Курсы», в которой содержится информация о курсе валюты USD. Для этого введем следующую формулу: =АДРЕС(3;2;1;1;»Курсы»).
Значение параметров:
- 3 – номер строки, в которой содержится искомая ячейка;
- 2 – номер столбца с искомой ячейкой;
- 1 – тип ссылки – абсолютная;
- 1 – выбор стиля ссылок с буквенно-цифровой записью;
- «Курсы» — название листа, на котором находится таблица с искомой ячейкой.
Для расчета стоимости в рублях используем формулу: =B3*ДВССЫЛ(D3).
Функция ДВССЫЛ необходима для получения числового значения, хранимого в ячейке, на которую указывает ссылка. В результате вычислений для остальных товаров получим следующую таблицу:
Как получить адрес ссылки на ячейку Excel?
Пример 2. В таблице содержатся данные о цене товаров, отсортированные в порядке возрастания стоимости. Необходимо получить ссылки на ячейки с минимальной и максимальной стоимостью товаров соответственно.
Исходная таблица имеет следующий вид:
Для получения ссылки на ячейку с минимальной стоимостью товара используем формулу:
Функция АДРЕС принимает следующие параметры:
- число, соответствующее номеру строки с минимальным значением цены (функция МИН выполняет поиск минимального значения и возвращает его, функция ПОИСКПОЗ находит позицию ячейки, содержащей минимальное значение цены. К полученному значению добавлено 2, поскольку ПОИСКПОЗ осуществляет поиск относительно диапазона выбранных ячеек.
- 2 – номер столбца, в котором находится искомая ячейка.
Аналогичным способом получаем ссылку на ячейку с максимальной ценой товара. В результате получим:
Адрес по номерам строк и столбцов листа Excel в стиле R1C1
Пример 3. В таблице содержится ячейка, данные из которой используются в другом программном продукте. Для обеспечения совместимости необходимо предоставить ссылку на нее в виде R1C1.
Исходная таблица имеет следующий вид:
Для получения ссылки на ячейку B6 используем следующую формулу: =АДРЕС(6;2;1;0).
Аргументы функции:
- 6 – номер строки искомой ячейки;
- 2 – номер столбца, в котором содержится ячейка;
- 1 – тип ссылки (абсолютная);
- 0 – указание на стиль R1C1.
В результате получим ссылку:
Практическое применение функции АДРЕС: Поиск значения в диапазоне таблицы Excel по столбцам и строкам.
Примечание: при использовании стиля R1C1 запись абсолютной ссылки не содержит знака «$». Чтобы отличать абсолютные и относительные ссылки используются квадратные скобки «[]». Например, если в данном примере в качестве параметра тип_ссылки указать число 4, ссылка на ячейку примет следующий вид:
Скачать примеры функции АДРЕС для получения ссылки на ячейку в Excel
Так выглядит абсолютный тип ссылок по строкам и столбцам при использовании стиля R1C1.