В листе Excel (создаваемом путем импорта внешних данных и изображений) находятся несколько ячеек, каждый из которых содержит разные изображения, а это изображение имеет гиперссылку. Эти ячейки, содержащие изображения, находятся в одной колонке.Excel: получение гиперссылки из изображения в ячейке
Как получить эту гиперссылку с каждого изображения? Гиперссылка НЕ извлекается из этой ячейки.
У меня есть пользовательская функция, которая легко извлекает гиперссылки из любой ячейки (если есть гиперссылка).
Function GetURL(rng As Range) As String
On Error Resume Next
GetURL = rng.Hyperlinks(1).Address
End Function
Эта функция может быть размещена в любом месте. Например: В ячейке c25 должен быть указан URL-адрес из гиперссылки в ячейке A1. Для этого просто введите следующую формулу в ячейку c25.
=GetURL(A1)
Это работает просто отлично.
Однако, если эта ячейка A1 содержит изображение с гиперссылкой, тогда результат будет равен нулю (или ничего). Хотя гиперссылка присутствует как часть этого изображения.
По-видимому, изображение - это объект, который необходимо решить. Как это можно сделать?
Всего найдено possible duplicate. К сожалению, ответ меня не заставил. Пожалуйста, добавьте образец кода. Спасибо.
К сожалению, данный код не работает для меня. Знай, что я делаю неправильно. Пожалуйста, не беспокойтесь о листе. Мне нужно, чтобы начальная функция (как указано в моем вопросе) была расширена/изменена, чтобы она могла читать URL-адрес изображения в этой ячейке. – snahl
Лучшей будет ваша функция, которая работает на одном листе для пары ячеек. – snahl
Я получил его как скрипт для ВСЕХ фигур в листе Excel. 'Sub ConvertHLShapes() Dim л.с Как форма Dim STEMP As String Для каждого SHP В ActiveSheet.Shapes STEMP = "" On Error Resume Next«идти к следующей форме, если нет гиперссылка STEMP = shp.Hyperlink. Адрес On Error GoTo 0 Если STEMP <> "" Тогда shp.TopLeftCell.Value = STEMP shp.Delete End If Next End Sub' – snahl