Гиперссылка для перехода на другую ячейку в Excel

4047
Andy Aldy

Я использую MS Excel 2007 (ранее знаком с Excel 2003). Я создаю простую гиперссылку в ячейке A1 (на листе Sheet1), поэтому, когда я щелкаю ячейку A1, курсор перемещается в ячейку B10. Это очень просто, с этим проблем нет (щелкните правой кнопкой мыши в ячейке A1, выберите гиперссылку и т. Д.).

Проблема возникает, когда я переименовываю вкладку, гиперссылка не будет работать, с предупреждением «Ссылка недействительна», а затем я должен отредактировать гиперссылку, чтобы она заработала. Проблема также возникает, когда я копирую лист (новый лист с именем Sheet1 (2)), если я щелкаю ячейку A1, он направляет меня в ячейку B10 в Sheet1 вместо ячейки B10 в новом листе (Sheet1 (2)). Я снова должен отредактировать гиперссылку, чтобы она заработала.

Есть ли способ запретить мне редактировать гиперссылку каждый раз, когда я переименовываю вкладку или копирую ссылку на другой лист (сделайте ее «относительной», а не «абсолютной»)?

3

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

3
Mehper C. Palavuzlar

Я не думаю, что вы можете сделать это без макроса. Стандартная функция гиперссылки в Excel предназначена для работы с заданными ссылками на книги, листы и ячейки. Тем не менее, вам может быть удобнее использовать HYPERLINKформулу. Ввод следующей формулы в ячейку A1 создаст гиперссылку, которая при нажатии приведет вас к ячейке B10:

=HYPERLINK("[Book1]Sheet1!B10", B10) 

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

Чтобы расширить это, если ссылки будут всегда находиться на одном и том же листе, вы можете иметь ячейку на листе, в которую вы вводите имя листа, а затем построить каждую формулу `HYPERLINK` на листе, используя это. В итоге вы получите что-то вроде этого: `= HYPERLINK (" [Book1.xls] "& A1 &"! B1 "," Up ")` где в `A1` вы вводите имя ячейки. Тогда вам нужно всего лишь изменить одну ячейку, чтобы обновить все гиперссылки, но если у вас есть только одна формула `HYPERLINK` на каждом листе, это не поможет. DMA57361 14 лет назад 3
2
helena4

= HYPERLINK (CONCATENATE ("#", CELL ("Address", A1)), "Имя ссылки")

"#" по какой-то причине представляет текущее имя файла (я однажды снял его с Google). Все это может быть довольно гибким, и вы можете динамически получать имена листов и файлов по формуле, если вы тот, кто много переставляет ваши файлы.

Я использую динамические гиперссылки; Это найти то, что я соответствую в Z15 и установить мне ссылку на него.

= HYPERLINK (CONCATENATE ("#", CELL ("Адрес", INDEX ($ A $ 1: $ A $ 2500, MATCH (Z15, $ C $ 1: $ C $ 2500,0) +0))), "Имя ссылки")

Другие функции гиперссылки (щелчок правой кнопкой мыши по ячейкам) довольно громоздки.

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

Я думаю, что "#" имитирует [идентификатор фрагмента] (https://en.wikipedia.org/wiki/Fragment_identifier) ​​в URL. Arjan 8 лет назад 0

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