Przejdź do głównej zawartości

Jak utworzyć dynamiczną listę nazw arkuszy w programie Excel?

Jeśli masz wiele arkuszy w skoroszycie i chcesz utworzyć dynamiczną listę wszystkich nazw arkuszy w nowym arkuszu w skoroszycie, jak możesz to zrobić? W tym samouczku przedstawiono kilka sztuczek umożliwiających szybkie wykonanie tej misji w programie Excel.

Utwórz dynamiczną listę nazw arkuszy za pomocą opcji Zdefiniuj nazwę i formułę

Utwórz dynamiczną listę nazw arkuszy z kodem VBA

Utwórz dynamiczną listę nazw arkuszy za pomocą Kutools for Excel dobry pomysł 3

Wyświetl dynamiczną listę nazw arkuszy roboczych za pomocą Kutools for Excel dobry pomysł 3


1. Wybierz komórkę w pustym arkuszu, tutaj wybieram A1, a następnie klikam Wzory > Zdefiniuj nazwę. zobacz zrzut ekranu:
doc-dynamic-workheetname-list-1

2. Następnie w Nowe imie dialog, wpisz arkusze w do Imię pole tekstowe (możesz zmienić według potrzeb) i wpisz tę formułę = SUBSTITUTE (GET.WORKBOOK (1), "[" & GET.WORKBOOK (16) & "]", "") w polu tekstowym Odnosi się do. Zobacz zrzut ekranu:
doc-dynamic-workheetname-list-2

3. kliknij OK. Przejdź do wybranej komórki (A1) i wpisz tę formułę = INDEKS (Arkusze, ROWS (1 $ A $: A1 $)) (A1 to komórka, do której wpisujesz tę formułę, „Arkusze” to nazwa zdefiniowana w kroku 2), a następnie przeciągnij uchwyt autouzupełniania w dół, aż #REF! pojawia się.
doc-dynamic-workheetname-list-3

Wskazówka: Jeśli są usunięte lub dodane arkusze, musisz przejść do A1 i nacisnąć klawisz Enter, a następnie ponownie przetrzeć uchwyt autouzupełniania.
doc-dynamic-workheetname-list-4


Jeśli chcesz utworzyć dynamiczną listę nazw arkuszy, które mogą łączyć się z każdym arkuszem, możesz użyć kodu VBA.

1. Utwórz nowy arkusz roboczy i zmień jego nazwę na Indeks. Zobacz zrzut ekranu:

doc-dynamic-workheetname-list-5       doc-dynamic-workheetname-list-6

2. Kliknij prawym przyciskiem myszy nazwę arkusza Indeks, wybierz Wyświetl kod z menu kontekstowego. Zobacz zrzut ekranu:
doc-dynamic-workheetname-list-7

3. W wyskakującym oknie skopiuj i wklej do niego poniższy kod VBA.

VBA: Utwórz dynamiczną listę nazw arkuszy.

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. kliknij run or F5 aby uruchomić VBA, tworzona jest teraz dynamiczna lista nazw arkuszy.
doc-dynamic-workheetname-list-8

Wskazówka:

1. Po usunięciu lub wstawieniu arkusza roboczego ze skoroszytu lista nazw arkuszy zmieni się automatycznie.

2. Możesz kliknąć nazwę arkusza listy nazw, aby przejść do arkusza.

Z powyższymi dwiema metodami nie są wystarczająco wygodne, jeśli jesteś zainteresowany nowym narzędziem, możesz przejść do kolejnych dwóch metod, które mogą ułatwić to zadanie.


 Jeśli chcesz tylko szybko wyświetlić wszystkie nazwy arkuszy w skoroszycie i połączyć je z oryginalnymi arkuszami, możesz użyć Kutools dla programu Excel'S Utwórz listę nazw arkuszy.

Kutools dla programu Excel, ponad 300 przydatne funkcje, ułatwiają pracę. 

Po bezpłatna instalacja Kutools dla programu Excel, wykonaj poniższe czynności:

1. kliknij Kutools Plus > Ćwiczenie > Utwórz listę nazw arkuszy. Zobacz zrzut ekranu:

dynamiczna nazwa arkusza roboczego doc 17

2. w Utwórz listę nazw arkuszy dialog:

 dynamiczna lista nazw arkuszy roboczych doc 2
(1) Sprawdź styl indeksu, którego potrzebujesz Style indeksu arkuszy Sekcja;
(2) Nazwij nowy arkusz indeksu, wpisując dane do Określ nazwę arkusza dla indeksu arkuszy pole tekstowe;
(3) Określ lokalizację, w której zostanie umieszczony dodany arkusz indeksu w pliku Wstaw indeks arkusza lista;
(4) Jeśli chcesz wyświetlić nazwy arkuszy na jednej liście, wybierz jedną kolumnę w Wyświetlanie indeksu arkusza w formacie lista.

3. kliknij Ok. Teraz możesz zobaczyć listę nazw arkuszy.
doc kutools tworzy listę arkuszy 3

Porady:

1. Możesz kliknąć nazwę arkusza, aby szybko przejść do oryginalnego arkusza.

2. Nazwy list lub arkuszy nie mogą zmieniać się dynamicznie podczas wstawiania lub usuwania arkuszy.

3. Właściwie możesz również utworzyć listę przycisków, aby połączyć odpowiedni arkusz, wystarczy sprawdzić Zawiera przyciski i makra w oknie dialogowym. zobacz screeshshot:
doc kutools tworzy listę arkuszy 4

Kliknij tutaj, aby dowiedzieć się więcej o tworzeniu listy nazw arkuszy.


Jeśli ty z Kutools dla programu Excel, możesz również użyć Nawigacja narzędzie do wyświetlania nazw arkuszy, które można połączyć w okienku

Po bezpłatna instalacja Kutools dla programu Excel, wykonaj poniższe czynności:

1. kliknij Kutools > Nawigacja. Kliknij Skoroszyt i arkusz aby wyświetlić skoroszyt i arkusz roboczy i możesz wybrać skoroszyt, a jego arkusze zostaną wyświetlone w formacie Nawigacja szkło. Zobacz zrzut ekranu:
okienko nawigacji po dokumentach 1   

Wskazówka:

Gdy istnieją usunięte lub dodane arkusze, możesz kliknąć plik przycisk odświeżania okienko nawigacji po dokumentach 2 Nawigacjan okienko, aby odświeżyć nazwy arkuszy.

Kliknij tutaj, aby uzyskać więcej informacji na temat nawigacji.

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
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