#excel #hyperlink #reference #indexing #cell
#excel #гиперссылка #ссылка #индексирование #ячейка
Вопрос:
В настоящее время у меня есть следующая настройка (упрощенная):
С помощью формул:
Как бы я изменил это, чтобы результат в A7: E7 (например, Google) превратился в гиперссылку на адрес, сохраненный в ссылочной ячейке результата (например, «www.google.com » в ячейке A2)?
Большое спасибо,
Алекс
Комментарии:
1. Я этого не понимаю. Вы хотите вставить гиперссылку в A7 на основе выбора, сделанного в C2? Вы сохраняете все три адреса в A2: A4? Будут ли это адреса или гиперссылки?
2. Да, я хочу, чтобы содержимое A7 совпадало с результирующей ячейкой (либо A2, A3, либо A4). Итак, если я сделаю свой выбор, нажав на ячейку C2 (Google или вариант 1), ячейка E4 будет содержать номер выбранной опции, а A7, соответственно, станет гиперссылкой на www.google.com . ответ пользователя 3514930 дает то, что я хочу, но означает, что я должен разделить A2: A4 на два столбца. Есть ли формула, которую я могу ввести в A7, которая дает желаемый результат, без необходимости менять что-либо еще?
Ответ №1:
Следуя схеме :
Использование функции EXCEL:
вы можете разделить гиперссылку на два столбца и использовать в формуле результата:
=HYPERLINK(INDEX(B2:B4;D2);INDEX(A2:A4;D2))
Использование VBA:
В модуле добавьте функцию:
Public Function Addr(x As Range) As String
Addr = x.Hyperlinks.Item(1).Address
End Function
и в результате используйте:
=HYPERLINK(Addr(INDEX(A6:A8;D2));INDEX(A6:A8;D2))
Использование диспетчера имен:
В диспетчере имен (в меню Формулы) добавьте имя с именем «KKK», вставив:
=GET.FORMULA(INDEX(Sheet1!$A$12:$A$14;Sheet1!$D$2))
и в результирующей ячейке:
=HYPERLINK(MID(KKK;1 FIND("""";KKK);FIND(";";KKK)-(2 FIND("""";KKK)));INDEX(A12:A14;D2))
Работает, ТОЛЬКО если это ФОРМУЛА, не работает, если это ссылка, подобная A6.
Комментарии:
1. Есть ли какой-либо способ сделать это без разделения на два отдельных столбца?