3

У меня есть таблица Excel, содержащая около 900 ячеек, каждая из которых содержит URL, который я вставил из другой программы.

Если я выбираю ячейку и нажимаю F2, а затем нажимаю Enter, Excel добавляет гиперссылку на ячейку, адрес которой является содержимым ячейки.

Существует ли механизм в Excel 2010 , чтобы повторить этот шаг для многих моих сотен клеток, без того , чтобы сделать F2 Введите шаг вручную?

(Я знаю, что мог бы автоматизировать это в AutoHotKey, но я надеюсь, что не нужно это делать)

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

Вещи, которые я пытался:

  1. Создание временного дополнительного столбца с =Hyperlink(A1) в A2 согласно ответу пользователя 301746, а затем с помощью Специальной вставки для копирования и вставки сначала форматирования, а затем значения по A1 . Это сработало, поскольку ячейки в A1 и т.д. Были показаны синим цветом и подчеркнуты, поэтому они выглядели как гиперссылки, но на самом деле они не были связаны - он только копировал стиль отображения гиперссылок.

4 ответа4

4

поэтому я нашел чит-метод к этому вопросу, у меня была та же проблема, мне нужно было превратить около 4000 ячеек в гиперссылки

Я скопировал и вставил весь столбец в лист google, gsheet автоматически превратил все ссылки в активные ссылки, затем скопировал столбец из gsheet и вставил его обратно в электронную таблицу Excel.

1

Хорошо, я нашел (немного уродливый) ряд шагов , которые , по крайней мере заканчиваются с гиперссылке текста в исходной колонке, используя user301746 Рекомендуемое использование функции HYPERLINK но только с одной колонкой.

  1. Скопируйте все ячейки Excel 2010, содержащие URL-адреса.
  2. Вставьте URL-адреса в Блокнот ++
  3. В Notepad ++ преобразуйте все URL-адреса в формулы HYPERLINK для Excel, используя механизм, описанный в этом ответе.
    1. Control-H, чтобы вызвать диалог замены
    2. Измените режим поиска на регулярное выражение
    3. Введите (http.*) качестве критерия поиска (найдите любую строку с http в нем и сохраните в переменной \1
    4. Введите =HYPERLINK\(\"\1\"\) в качестве критерия замены - замените то, что было найдено на предыдущем шаге, на то, которое содержится в вызове функции HYPERLINK
    5. Заменить все - теперь все ваши линии ссылок заключены, все оставшиеся строки должны быть заголовками
  4. Скопируйте весь текст из Notepad ++
  5. Вставьте его поверх исходных ячеек в Excel 2010. Теперь все ячейки Excel будут гиперссылками, но они не будут отформатированы так, чтобы выглядеть как гиперссылки.
  6. Пока вставленные ячейки еще выделены, нажмите кнопку стиля «Гиперссылка» в разделе «Стили» на вкладке «Главная» ленты, чтобы они выглядели как гиперссылки.
1

В качестве альтернативы autohotkey достаточно легко кодировать в vba. Следующий код будет делать то, что вы хотите для всех ячеек в столбце A, начиная со строки 2.

Sub add_links()
Dim lRow As Long

    With ActiveSheet
        lRow = .Range("A" & .Rows.Count).End(xlUp).Row
        For Each c In .Range("A2:A" & lRow)
            ActiveSheet.Hyperlinks.add anchor:=c, Address:=c.Value
        Next
    End With

End Sub
1

Вы можете использовать = Гиперссылка (A1) в A2, чтобы сделать то, что вы хотите, а затем скопировать его вниз с помощью инструмента заполнения ячеек.

Надеюсь, это поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .