Гиперссылка на другой лист с использованием функции гиперссылки в Excel

84832
Martijn

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

9
Используете ли вы «Нажмите здесь» в качестве фактической гиперссылки в A2? В противном случае мне непонятно, почему вы показываете имя в A1 и не используете его в качестве самой ссылки (кнопка вставки гиперссылки очень полезна и проста в использовании). RocketGoal 14 лет назад 1

4 ответа на вопрос

17
www
=HYPERLINK("#'linked sheet name'!linked cell number","your message") 

Например

=HYPERLINK("#'Page 2'!A4","TEST") 

Имя связанного листа - Страница 2, номер связанной ячейки - А4, а сообщение - ТЕСТ. #Является сокращением для локальной книги.

2
DMA57361

HYPERLINKФункция используется, чтобы сделать ссылку на другую ссылку листа этого:

=HYPERLINK("[File]SheetName!A1", "NiceName" ) 

Поскольку первая часть является строкой, если ваше значение для SheetNameсохранено в ячейке, A1вы можете использовать CONCATENATEэту строку для построения такой строки (разрывы строк добавлены внутри, CONCATENATEнадеюсь, для большей ясности)

=HYPERLINK( CONCATENATE("[", MID(CELL("filename"),SEARCH("[",CELL("filename"))+1,SEARCH("]",CELL("filename"))-SEARCH("[",CELL("filename"))-1), "]", A1, "!B1" ), "Name" ) 

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

Используйте B1для ячейки или именованного диапазона для ссылки (я думаю, просто используйте A1, если вы просто хотите открыть этот лист и заметить, что его беспокоит конкретная точка в нем).
И "NiceName"это то, что появляется в ячейке для пользователя.

В качестве краткого объяснения, что CONCATENATEделает, сначала извлекает имя файла CELL("filename"), оборачивает его в необходимое [], добавляет имя листа (взятого из ячейки A1), и, наконец, добавляет !и имя ячейки для завершения ссылки. Например, результатом будет что-то вроде следующего, которое должно работать как цель HYPERLINK.

[FileName.xls]SheetName!A1 
Спасибо за Ваш ответ. Сначала я попробовал ваш первый вариант, чтобы проверить, работают ли основы, но Excel дает мне ошибку, что файл не может быть открыт. Разве первый вариант не должен сочетаться с полным именем пути? Я пробовал это раньше, также используя функцию "ячейка", но не смог заставить ее работать, может быть, вы можете помочь мне ... Martijn 14 лет назад 0
@Martijn - я обновляю свой ответ более точным. Извиняюсь, но мои первые попытки явно не были проверены до того, как я их опубликовал. Пожалуйста, проверьте отредактированный ответ. DMA57361 14 лет назад 0
Все еще не может заставить работать даже простую функцию. Все равно выдает ошибку пути. Попробовал с помощью "Cell" затем скопировать и вставить значение в [File] .. path path error. Пробовал записывать путь UNC, все еще ошибка .. не могу понять, что я делаю не так здесь .. Martijn 14 лет назад 0
Хорошо, получил простой для работы .. Теперь пытаемся создать строку, как показано ниже .. Есть идеи, почему это не работает ..? Название вкладки в A2. = HYPERLINK ( "[Verlofkaarten.xlsm] '& A2' A1!"; A2) Martijn 14 лет назад 0
Понял...! Вот решение: = HYPERLINK ("[Verlofkaarten.xlsm]" & A2 & "! A1"; "Имя") Martijn 14 лет назад 0
@Martijn Вы используете `" [Verlofkaarten.xlsm] '& A2'! A1 "` не будет работать - потому что это одна строка, она не оценивает содержимое - другими словами, не читает имя листа из A2, но ищет лист с именем `& A2`. Вот почему я использовал `CONCATENATE` (который склеивает вещи, чтобы в результате получить комбинированную строку). Если вы собираетесь использовать `&` вместо этого, я думаю, что это должно быть `" [Verlofkaarten.xlsm] "& A2 &"! A1 "` - обратите внимание, что кавычки закрыты и открыты снова вокруг `& A2 &`. DMA57361 14 лет назад 0
@Martijn Если вы хотите, чтобы это работало, попробуйте поместить `=" [Verlofkaarten.xlsm] "& A2 &"! A1 "` в отдельную ячейку - как только вы получите работающую строку, оберните ее в Вызов HYPERLINK DMA57361 14 лет назад 0
@Martijn - отлично, и ты меня тоже побил. :) DMA57361 14 лет назад 0
@ DMA57361 Спасибо за вашу помощь .. мозговой штурм сделал это для меня ....;) Martijn 14 лет назад 0
2
Andrew

Будьте осторожны при использовании фактического имени файла в гиперссылке, потому что вы создаете зависимость от существования этого имени файла.

Если я ссылаюсь на ячейку в той же книге, я использую:

=HYPERLINK("[.\]Report!D4", "Click here to go to cell D4 of the Report tab") 
  • ". \" `просто означает" этот файл ".
Зачем указывать файл вообще? Scott Beeson 8 лет назад 0
-1
Laurence Postgate

Это сработало для меня, когда я не знаю, каким будет имя файла электронной таблицы (пользователи меняют имя для каждой версии). Мой дружественный текст в ячейке называется «ССЫЛКА», потому что имя листа должно существовать в другой ячейке, поэтому дублирование имени сбило с толку пользователей. Вы бы скопировали эту формулу рядом со списком имен листов в столбце H (начиная со строки 2 в этом случае) ... работает как кликабельное оглавление:

= HYPERLINK (MID (CELL ("имя файла", $ A $ 1), FIND ("[", CELL ("имя файла", $ A $ 1)), FIND ("]", CELL ("имя файла", $ A $ 1) ) - НАЙТИ ("[", CELL ("имя файла", $ A $ 1)) + 1) & "#" & $ H2 & "! A1", "LINK")

Я не совсем понимаю, почему «col H (начиная со строки 2 в данном случае)», когда вопрос относится к «A2», зачем копировать, когда запрашивается только одна ссылка, и вашу формулу (по крайней мере, без объяснения На первый взгляд выглядит гораздо сложнее, чем нужно. pnuts 12 лет назад 0

Похожие вопросы