Совет. Другие языки - Google-Translated. Вы можете посетить English версия этой ссылки.
Войти
x
or
x
x
Регистрация
x

or

Как следовать гиперссылке на скрытый лист в Excel?

Например, у меня есть книга, содержащая несколько листов, первая листка имеет гиперссылки на другие листы, и теперь я скрываю все листы, кроме первого. В этом случае гиперссылки, которые ссылаются на скрытые листы, недоступны. Но как вы могли бы сделать эти гиперссылки успешными? Когда вы нажимаете одну гиперссылку, связанный скрытый лист будет открыт сразу, как показано на следующем скриншоте:

doc гиперссылка на скрытый лист 1

Следуйте за гиперссылкой, чтобы открыть скрытый лист с кодом VBA

Следуйте гиперссылке, чтобы открыть скрытый лист, а затем снова спрятать его с кодом VBA.


Перечислите все имена рабочих листов и ссылку на каждый лист:

Kutools for Excel's Создать список имен листов утилита, вы можете быстро перечислить все имена рабочих листов в новом листе с гиперссылками или макрокомандами по мере необходимости.

имена рабочих листов с гиперссылками имена рабочих листов с помощью макрокоманд
док-лист-лист-names2  2 док-лист-лист-names2  2 док-лист-лист-names2

Следуйте за гиперссылкой, чтобы открыть скрытый лист с кодом VBA


Следующий код VBA может помочь вам открыть скрытый рабочий лист при нажатии на его относительную гиперссылку, пожалуйста, сделайте следующее:

1, Щелкните правой кнопкой мыши вкладку листа, в которой вы хотите следовать гиперссылке на скрытый лист, а затем выберите Просмотреть код из контекстного меню, в выпадающем списке Microsoft Visual Basic для приложений окно, скопируйте и вставьте следующий код в пустой модуль:

Код VBA: следуйте гиперссылке, чтобы открыть скрытый лист:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20161109
    Application.ScreenUpdating = False
    On Error Resume Next
    If Target.Column = 1 Then
        Sheets(Target.Value).Visible = xlSheetVisible
        Sheets(Target.Value).Select
    End If
    Application.ScreenUpdating = True
End Sub

doc гиперссылка на скрытый лист 2

Внимание: В приведенном выше коде число 1 В этом Если Target.Column = 1 Then script указывает номер столбца, который содержит гиперссылки, пожалуйста, измените его.

2, Затем сохраните и закройте это окно кода, теперь, когда вы нажимаете гиперссылку, которая ссылается на конкретный скрытый лист, скрытый лист открывается сразу.


Следуйте гиперссылке, чтобы открыть скрытый лист, а затем снова спрятать его с кодом VBA.

Иногда вам нужно следовать гиперссылке, чтобы открыть скрытый лист, и когда вы вернетесь к мастер-листу, вы хотите снова открыть скрытый лист. Ниже код VBA может оказать вам услугу:

1, Щелкните правой кнопкой мыши вкладку листа, в которой вы хотите следовать гиперссылке на скрытый лист, а затем выберите Просмотреть код из контекстного меню, в выпадающем списке Microsoft Visual Basic для приложений окно, скопируйте и вставьте следующий код в пустой модуль:

Код VBA. Следуйте за гиперссылкой, чтобы открыть скрытый лист, когда верните его обратно.

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
   'Updateby Extendoffice 20161109
    Application.ScreenUpdating = False
    Dim strLinkSheet As String
    If InStr(Target.Parent, "!") > 0 Then
        strLinkSheet = Left(Target.Parent, InStr(1, Target.Parent, "!") - 1)
    Else
        strLinkSheet = Target.Parent
    End If
    Sheets(strLinkSheet).Visible = True
    Sheets(strLinkSheet).Select
    Application.ScreenUpdating = True
End Sub

Private Sub Worksheet_Activate()
    On Error Resume Next
    Sheets(ActiveCell.Value2).Visible = False
End Sub

doc гиперссылка на скрытый лист 3

2, Затем сохраните объявление, закройте окно кода, когда вы нажмете гиперссылку, связанный скрытый лист будет немедленно открыт, но если вы вернетесь к мастер-листу, который содержит гиперссылки, открытый лист снова будет скрыт автоматически.

Внимание: Коды тезов применяются только к именам листов, которые соответствуют вашему гипертекстовому тексту.


Демо: следуйте гиперссылке, чтобы открыть скрытый лист с кодом VBA

Kutools for Excel: с более чем 200 удобными надстройками Excel, бесплатно попробовать без ограничений в 60-дни. Скачать и бесплатно пробную версию!


  • Супер Формула Бар (легко редактировать несколько строк текста и формул); Макет чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы и хранение данных; Содержание сплит-клеток; Объедините дублирующиеся строки и сумму / среднее... предотвратить повторяющиеся клетки; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выберите пустые строки (все ячейки пусты); Супер найти и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения формулы ссылки; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Любимые и быстро вставляемые формулы, Диапазоны, графики и рисунки; Шифрование ячеек с паролем; Создать список рассылки и отправлять электронные письма ...
  • Извлечение текстаДобавить текст, Удалить по позиции, Удалить пространство; Создание и печать промежуточных итогов подкачки; Преобразование содержимого ячеек и комментариев...
  • Суперфильтр (сохранить и применить схемы фильтров к другим листам); Расширенный поиск по месяцам / неделям / дням, частоте и более; Специальный фильтр жирным шрифтом, курсивом ...
  • Объединить рабочие тетради и рабочие листы; Объединение таблиц на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Работает с Office 2007-2019 и 365 и поддерживает все языки. Это легко развернуть в вашей компании. Полнофункциональная 60-дневная бесплатная пробная версия.
вкладка kte 201905
  • Включить редактирование и чтение с вкладками в Word, Excel, PowerPoint, Издатель, Доступ, Visio и Проект.
  • Открывайте и создавайте несколько документов в новых вкладках одного и того же окна, а не в новых окнах.
  • Увеличивает вашу производительность на 50% и уменьшает сотни щелчков мышью для вас каждый день!
нижняя часть офиса
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Ken · 1 years ago
    I would like to use this code but only want it to apply to column A. I have other web address links in other cells which cause a problem when running this code.
  • To post as a guest, your comment is unpublished.
    DNKP · 2 years ago
    My hyperlink "text" is number only, and it doesn't work...
  • To post as a guest, your comment is unpublished.
    Brad Guiso · 2 years ago
    I'm using the code on two different sheets. It works for one of about 40 hyperlinks on one sheet and it opens two of about 10 hyperlinks one she second, the sheets on the second which do open do go back into hiding when I return to the sheet.

    The error I get when it will not open a sheet is Run-time error"9": script out of range and the code it points me to - Sheets(strLinkSheet).Visible = True

    Any ideas as to what change is needed make the code work on all of the sheets?

    Thank you in advance.
  • To post as a guest, your comment is unpublished.
    HelzBelz · 2 years ago
    I have used this code on two different sheets in my workbook, and in both cases it works great, except for the first hyperlink on each page. I get "Subscript out of range error" and the debugger points to the "Sheets(strLinkSheet).Visible = True" right after the "end if".

    Anyone else see this error? It is only on the first link on the page. (my hyperlinks are in column A, and start in row 2)
    • To post as a guest, your comment is unpublished.
      Bumi · 2 years ago
      [quote name="HelzBelz"]I have used this code on two different sheets in my workbook, and in both cases it works great, except for the first hyperlink on each page. I get "Subscript out of range error" and the debugger points to the "Sheets(strLinkSheet).Visible = True" right after the "end if".

      Anyone else see this error? It is only on the first link on the page. (my hyperlinks are in column A, and start in row 2)[/quote]
      Sheet names can't have space like "Sheet 1". I fixed my sheet names to "Sheet1" and the error stopped.
  • To post as a guest, your comment is unpublished.
    Regina Hardaway · 2 years ago
    I have a sheet that is hidden that contains a hyperlink. I would like to be able go to the hidden sheet and have it close when I go back to the original sheet. I used the code but it does not work.
  • To post as a guest, your comment is unpublished.
    Regina Hardaway · 2 years ago
    I am trying to hide a sheet that has a hyperlink. I would like to be able to click on the sheet go to the hyperlink sheet and then click back to the sheet and close the hidden sheet. I have tried your instructions but it does not work. Not sure what I am doing wrong.