Проверьте, содержит ли ячейка ссылку в Excel

Вопрос:

Я пытаюсь проверить, содержат ли значения в столбце, например A, ссылку, и если true, в столбце B, я хочу набрать текст, например: link. У меня много записей (10 000), поэтому делать это вручную займет много времени. Спасибо.

Лучший ответ:
  • Сохраните файл как.xlsm, чтобы разрешить макросы
  • Alt + F11 для открытия Visual Basic
  • ВставитьМодуль
  • Вставьте эту функцию, она вернет количество гиперссылок в диапазоне:
Function IsHyperlink(r As Range) As Integer
IsHyperlink = r.Hyperlinks.Count
End Function
  • Alt + Q

  • Используйте свою новую функцию с условиями if, чтобы отобразить текст:

     =IF(IsHyperlink(A1),"LINK","NO LINK")
Ответ №1

Вот:

Sub Links()
Dim lnk As Hyperlink, lnks As Hyperlinks
Set lnks = Range("A:A").Hyperlinks
For i = 1 To lnks.Count
Set lnk = lnks(i)
lnk.Range.Value = "Link"
Next
End Sub

Вам нужно больше узнать о VBA, если вы хотите использовать описанную выше процедуру. Пожалуйста, всегда делитесь своими исследованиями сначала и, по крайней мере, с заглушкой кода. Это было просто, поэтому исключение.

Ответ №2

Существует формула, которая может работать, но она основана на длине символов в ячейке. Например, гиперссылка обычно содержит больше символов из-за имени пути. Если количество символов в ваших ячейках всегда меньше 30, например, вы можете написать формулу

 =If(Len(Cell("Filename",A1))>30,"True","False")

Формула вернет “True”, если ячейка является гиперссылкой. Эта формула предполагает, что файл Excel хранится во вложенной папке, где указано имя каждой папки, которое добавляет длину гиперссылки.

Ответ №3

Мне удалось найти формулу, а не VBA.

Я использовал =IF(HYPERLINK(A1>0), "WEB", "")

Спасибо всем за ваше время. 🙂

Оцените статью
TechArks.Ru
Добавить комментарий