Перейти к основному содержанию

Как создать динамический список имен листов в Excel?

Если у вас есть несколько листов в книге, и вы хотите создать динамический список всех имен листов на новом листе в книге, как вы можете это сделать? Теперь в этом руководстве представлены некоторые приемы для быстрого выполнения этой миссии в Excel.

Создайте динамический список имен рабочих листов с помощью Определить имя и формулу

Создайте динамический список имен рабочих листов с кодом VBA

Создайте динамический список имен рабочих листов с помощью Kutools for Excel хорошая идея3

Отображение динамического списка имен рабочих листов с помощью Kutools for Excel хорошая идея3


1. Выберите ячейку на пустом листе, здесь я выбираю A1, а затем нажимаю Формулы > Определить имя. см. снимок экрана:
документ-динамический-имя-листа-список-1

2. Затем в Новое имя диалог, тип Листы в Фамилия текстовое поле (вы можете изменить по своему усмотрению) и введите эту формулу = ПОДСТАВИТЬ (GET.WORKBOOK (1), "[" & GET.WORKBOOK (16) & "]", "") в текстовое поле Ссылается на. Смотрите скриншот:
документ-динамический-имя-листа-список-2

3. Нажмите OK. Перейдите к выбранной ячейке (A1) и введите эту формулу = ИНДЕКС (Листы; СТРОКИ ($ A $ 1: $ A1)) (A1 - это ячейка, в которую вы вводите эту формулу, «Таблицы» - это имя, которое вы определили на шаге 2), затем перетащите дескриптор автозаполнения вниз до #REF! появляется.
документ-динамический-имя-листа-список-3

Функции: Если рабочие листы удалены или добавлены, вам нужно перейти в A1 и нажать клавишу Enter, затем снова потянуть ручку автозаполнения.
документ-динамический-имя-листа-список-4


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

1. Создайте новый рабочий лист и переименуйте его в Index. Смотрите скриншот:

документ-динамический-имя-листа-список-5       документ-динамический-имя-листа-список-6

2. Щелкните правой кнопкой мыши имя листа Index, выберите Просмотреть код из контекстного меню. Смотрите скриншот:
документ-динамический-имя-листа-список-7

3. Во всплывающем окне скопируйте и вставьте в него код VBA ниже.

VBA: создание динамического списка имен рабочих листов.

Private Sub Worksheet_Activate()
	'Updateby20150305
	Dim xSheet As Worksheet
	Dim xRow As Integer
	Dim calcState As Long
	Dim scrUpdateState As Long
	Application.ScreenUpdating = False
	xRow                       = 1
	With Me
		.Columns(1).ClearContents
		.Cells(1, 1) = "INDEX"
		.Cells(1, 1).Name = "Index"
	End With
	For Each xSheet In Application.Worksheets
		If xSheet.Name <> Me.Name Then
			xRow                     = xRow + 1
			With xSheet
				.Range("A1").Name = "Start_" & xSheet.Index
				.Hyperlinks.Add anchor: = .Range("A1"), Address: = "", _
				SubAddress:             = "Index", TextToDisplay: = "Back to Index"
			End With
			Me.Hyperlinks.Add anchor: = Me.Cells(xRow, 1), Address: = "", _
			SubAddress: = "Start_" & xSheet.Index, TextToDisplay: = xSheet.Name
		End If
	Next
	Application.ScreenUpdating = True
End Sub

4. Нажмите Run or F5 для запуска VBA теперь создается динамический список имен рабочих листов.
документ-динамический-имя-листа-список-8

Наконечник:

1. Когда рабочий лист книги удаляется или вставляется, список имен рабочих листов автоматически изменяется.

2. Вы можете щелкнуть имя листа в списке имен, чтобы перейти на лист.

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


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

Kutools for Excel, с более чем 300 удобные функции, облегчающие вашу работу. 

После бесплатная установка Kutools for Excel, сделайте следующее:

1. Нажмите Кутулс Плюс > Рабочий лист > Создать список имен листов. Смотрите скриншот:

doc имя динамического листа 17

2. в Создать список имен листов диалог:

 doc список динамических имен листов 2
(1) Проверьте нужный стиль индекса в Стили указателя листов раздел;
(2) Назовите новый индексный лист, введя данные в Укажите имя листа для указателя листов текстовое окно;
(3) Укажите место, в которое вы поместите добавленную индексную страницу в Вставьте указатель листа в список;
(4) Если вы хотите отобразить имена листов в одном списке, выберите 1 столбец в Отображение индекса листа в .

3. Нажмите Ok. Теперь вы можете увидеть список имен листов.
doc kutools создать список листов 3

Советы:

1. Вы можете щелкнуть имя листа, чтобы быстро перейти к исходному листу.

2. Список или имена листов не могут динамически изменяться при вставке или удалении листов.

3. Фактически, вы также можете создать список кнопок, чтобы связать соответствующий лист, просто нужно проверить Содержит кнопки и макросы в диалоге. см. снимок экрана:
doc kutools создать список листов 4

Щелкните здесь, чтобы узнать больше о создании списка имен листов.


Если вы с Kutools for Excel, вы также можете использовать Навигация утилита для отображения имен связанных листов на панели

После бесплатная установка Kutools for Excel, сделайте следующее:

1. Нажмите Кутулс > Навигация. Нажмите Рабочая тетрадь и лист чтобы отобразить книгу и рабочий лист, и вы можете выбрать книгу, тогда ее рабочие листы будут отображаться в Навигация панель. Смотрите скриншот:
панель навигации документа 1   

Наконечник:

Когда рабочие листы удалены или добавлены, вы можете щелкнуть кнопка обновления панель навигации документа 2 в Navigation, чтобы обновить имена рабочих листов.

Щелкните здесь для получения дополнительной информации о навигации.

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (13)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hallo. hoe zou ik dit kunnen doen om hetzelfde te doen maar met een welbepaade cel van verschillende werkbladen. Bv. een leeg tabblad. mijn andere werkbladen hebben allemaal dezelfde lay-out, maar in iedere cel een andere tekst. Nu zou ik graag in mijn leeg tabblad in Cel A1 de gegevens terugvinden van tabblad1 cel B3. Maar dan zou ik graag in Cel A2 de gegevens terugvinden van tabblad 2 cel 3. En zou naar beneden en dit in een beweging. We kunnen allemaal afzonderlijk doen, maar als er 500 werkbladen zijn, is dit onmogelijk.

Merci voor den input.
This comment was minimized by the moderator on the site
Hi, I guess you want to list all same cells across multiple sheets, if so, there are two tutorials may help you. Please visit:
How to reference same cell from multiple worksheets in Excel?
How to create a list from same cells across multiple sheets in Excel?
Hope it is helpful.
This comment was minimized by the moderator on the site
Em português brasileiro, GET.WORKBOOK é identificado como uma função no Gerenciador de Nomes para criar o nome "Sheets", mas ao referenciar "Sheets" numa célula, aparece o erro "#NOME?". Tentei várias vezes, inclusive com a sugestão de traduzir GET.WORKBOOK para OBTER.LIVRO mas não funcionou.
This comment was minimized by the moderator on the site
Hi, try this: =SUBSTITUIR(INFO.PASTA.TRABALHO(1),"["&INFO.PASTA.TRABALHO(16)&"]","")
This comment was minimized by the moderator on the site
Thanks for this helpful info. I created a dynamic list with VBA code in the Index tab. I found that it only updates when I click back to the Index tab, though. Is there a way to ensure it auto updates as soon as a new tab is created? I refer to the tab names elsewhere in the workbook and others will be using it so I'm trying to make it seamless. Thank you!
This comment was minimized by the moderator on the site
Sorry, I do not find that code can finish your job.
This comment was minimized by the moderator on the site
Or you can simply rightClick either the left or right tab-horizontal-scroll arrow at the bottomLeft, and then click the worksheet name (from the simple vertical list) that you want to jump to.
This comment was minimized by the moderator on the site
Just what I needed and worked perfectly. Thank you!
This comment was minimized by the moderator on the site
Defining the name "Sheets" in the define name DOES NOT WORK. The "refers to" box will not save the formula as typed and converts it to a text string.
This comment was minimized by the moderator on the site
how can I use this code to create the list of worksheets in horizontal order instead of vertical? is it possible?
This comment was minimized by the moderator on the site
Thank you. It is very useful. :D
This comment was minimized by the moderator on the site
How can i remove the links to each sheets and how to not include the "sheet1" and "Index" sheet? Private Sub Worksheet_Activate() 'Updateby20150305 Dim xSheet As Worksheet Dim xRow As Integer Dim calcState As Long Dim scrUpdateState As Long Application.ScreenUpdating = False xRow = 1 With Me .Columns(1).ClearContents .Cells(1, 1) = "INDEX" .Cells(1, 1).Name = "Index" End With For Each xSheet In Application.Worksheets If xSheet.Name Me.Name Then xRow = xRow + 1 With xSheet .Range("A1").Name = "Start_" & xSheet.Index .Hyperlinks.Add anchor: = .Range("A1"), Address: = "", _ SubAddress: = "Index", TextToDisplay: = "Back to Index" End With Me.Hyperlinks.Add anchor: = Me.Cells(xRow, 1), Address: = "", _ SubAddress: = "Start_" & xSheet.Index, TextToDisplay: = xSheet.Name End If Next Application.ScreenUpdating = True End Sub
This comment was minimized by the moderator on the site
How would I go about editing this code to include a checkbox to the left of the link that I could use to hide rows on a cover sheet? Also how could I insert a row on the worksheets below A1 to have the return to index link show up there?
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations