Если столбец B уже содержит URL-адрес, а столбец A содержит URL-адрес в виде обычного текста, попробуйте выполнить это в ячейке C1
. (Это предполагает, что вы можете вставить столбец C для этого использования, не испортив организацию. Другой вариант - ввести имя открытого текста в каждую формулу в столбце A.)
=HYPERLINK(B1,A1)
Параметры для HYPERLINK
являются, (link_location,[friendly_name])
где friendly_name является необязательным.
ОБНОВИТЬ
ПРИМЕЧАНИЕ. Следующий подход будет работать только в том случае, если вы хотите, чтобы friendly_name было таким же, как текст после последнего /
в вашем URL.
Предполагая, что ваши данные начинаются со строки 1, поместите их в ячейку A1
и перетащите их вниз.
=HYPERLINK(B1,IFERROR(RIGHT(B1,LEN(B1)-FIND("$",SUBSTITUTE(B1,"/","$",LEN(B1)-LEN(SUBSTITUTE(B1,"/",""))))),B1))
Теперь для объяснения!
LEN(B1)-LEN(SUBSTITUTE(B1,"/","")
SUBSTITUTE
параметры, (text,old_text,new_text,[instance_num])
где instance_num является необязательным.
SUBSTITUTE
заменяет все /
символы в строке пустой строкой, поскольку мы не предоставили параметр instance_num. С помощью LEN
мы получаем длину строки минус длина строки без, /
что дает нам количество раз, которое /
происходит, что будет 4 для вашего OP.
SUBSTITUTE(B1,"/","$",4)
В этом случае мы используем необязательный четвертый параметр (я использую само число из предыдущего результата здесь из OP только для этого примера). Это заменит только последнее вхождение /
тегом $
, который должен быть символом, который никогда не будет частью вашей строки. Ваш результат OP будет " http: // host: 1234 / svn $ product_a"
LEN(B1)-FIND("$","http://host:1234/svn$product_a")
21
FIND
параметры, (find_text,within_text,[start_num])
и нам не нужно использовать необязательный параметр start_num, поскольку, если мы выберем правильный тег, будет только один. (Еще раз, я использую строку из предыдущего результата здесь из OP только для этого примера).
Длина строки (30) минус расположение тега (21) дает длину текста после последнего /
(9).
RIGHT
дает вам текстовую строку, которые являются самыми правыми 9 символами в строке.
IFERROR
оборачивает это в проверку ошибок. Если ошибок нет, вы получите результат расчета. Если это ошибка, такие, как не /
в строке для FIND
и SUBSTITUTE
функций для работы, то он будет возвращать текст B1
.
И, наконец, HYPERLINK
функция создаст ссылку из URL-адреса B1
с именем friendly_name, полученным в результате вычислений выше.
Этот способ найти последние символы после разделителя - это не то, что я понял, а повсеместно, и я так долго пользовался, что даже не знаю, кому это нужно!
(Как только я подумал об этом, мне просто нужно было добавить его :) Надеюсь, это поможет.)