One of our accounting department log files is maintained as a workbook with a large and growing number of sheets, each named for the client to which it pertains. Scrolling the tabs is crazy-making. I can envision building a navigation page with a button for each letter of the alphabet which generate a dynamic list of matching tabs for one-click navigation, but (1) I don’t have time to figure out how to do that and (2) I can’t believe there isn’t something “built in” to go to a tab more efficiently. “Find” might be the best short-term workaround. Is there another/better way to leap among sheets in a workbook?
![]() |
Patch reliability is unclear, but widespread attacks make patching prudent. Go ahead and patch, but watch out for potential problems. |
SIGN IN | Not a member? | REGISTER | PLUS MEMBERSHIP |
-
Navigation suggestions? 95 sheets! (2000/SR-1)
Home » Forums » AskWoody support » Productivity software by function » MS Excel and spreadsheet help » Navigation suggestions? 95 sheets! (2000/SR-1)
- This topic has 17 replies, 9 voices, and was last updated 23 years, 1 month ago.
AuthorTopicWSjscher2000
AskWoody LoungerMarch 12, 2002 at 5:33 pm #368094Viewing 2 reply threadsAuthorReplies-
WSJim Cone
AskWoody Lounger -
WSjscher2000
AskWoody LoungerMarch 12, 2002 at 7:58 pm #575883That’s great. I can right-click, then click More Sheets…, then choose from the Activate dialog. I wonder if I can get there faster? Yes!
This will pop up the dialog:
[indent]
Public Sub PopActivateSheets() CommandBars("Workbook tabs").Controls("More Sheets...").Execute End Sub
[/indent]Thanks for your help in tracking this down.
-
WSAlanMiller
AskWoody Lounger -
WSJIMbythebay
AskWoody Lounger -
WSJohnBF
AskWoody Lounger -
WSJIMbythebay
AskWoody Lounger -
WSJohnBF
AskWoody LoungerMarch 15, 2002 at 9:11 pm #576534So we need something like this, with my questions resolved, and code de-uglied …
Sub showtabs()
Dim sSht As Worksheet
Dim cCht As Chart
Dim intC As Integer
For Each sSht In ThisWorkbook.Sheets
If sSht.Visible = True Then intC = intC + 1
Next sSht
‘do charts show in the pop-up? prolly a cleaner way to do this …
For Each cCht In ThisWorkbook.Charts
If cCht.Visible = True Then intC = intC + 1
Next cCht
If intC < 17 Then
‘show the appropriate commandbar, whatever it is, any takers?
Else
CommandBars(“Workbook tabs”).Controls(“More Sheets…”).Execute
End If
End Sub -
WSJIMbythebay
AskWoody LoungerMarch 15, 2002 at 9:48 pm #576540John – try this.
Dim sht, n As Integer n = 0 For Each sht In ActiveWorkbook.Sheets If sht.Visible = -1 Then n = n + 1 Next sht If n <= 16 Then CommandBars("Workbook tabs").ShowPopup Else CommandBars("Workbook tabs").Controls("More Sheets...").Execute End If
Comments: 1) “Sheets” collection includes worksheets and chart sheets, so there is no need treat each one differently in this context. 2) ShowPopup shows the little pop-up you see if you right-click the sheet nav arrows when the number of visible sheets is 16 or less.
-
WSAlanMiller
AskWoody LoungerMarch 16, 2002 at 11:24 am #576617Hi Jim
Method works well here. The only addition I’d like to make is for the checkbox mark on the popup to be restored to the currently active sheet. I’m presuming that looping through the sheets somehow sets this to the last visible sheet in the workbook (tried only for n<17).
I'm sure there's a simple one liner to reset the checked box to the current sheet, but being new to VBA, I had no luck locating the appropriate code.
cheers
Alan
-
WSJIMbythebay
AskWoody Lounger -
WSAlanMiller
AskWoody LoungerMarch 18, 2002 at 11:48 pm #577001I can see that this is a better solution. The problem with the solutions posted prior to Rory’s, was that counting the sheets resulted in the incorrect sheet being checked in the popup. My solution corrected this problem, but subsequently, Rory’s solution doesn’t even encounter/cause it.
Alan
-
-
WSjscher2000
AskWoody LoungerMarch 17, 2002 at 1:33 am #576693I didn’t test enough. If there are too few sheets for the More Sheets… item to be available you will get that error. This code works around it:
Public Sub PopActivateSheets() On Error Resume Next CommandBars("Workbook tabs").Controls("More Sheets...").Execute If Err.Number 0 Then If Err.Number = 5 Then 'Not that many tabs CommandBars("Workbook tabs").ShowPopup Else MsgBox "Error number" & Err.Number & vbCrLf & Err.Description End If End If End Sub
And call me Jefferson.
-
WSrory
AskWoody Lounger
-
-
-
-
-
WSServando
AskWoody LoungerMarch 15, 2002 at 4:34 pm #576498Hi Jefferson.
This is what I do…
I make a navigation sheet and make the list of clients. In the cell that corresponding to client, I create a HyperLink (I believe that it is Ctl +K in the version in English) and I associate it to the Sheet of client.
(text See my attachment file, also it has a routine that orders your worksheets ascendingtext)I believe that it is a easy way
-
WSTricky
AskWoody LoungerMarch 16, 2002 at 3:17 pm #576637You should click here and download the FREE add-in. There is a utility included that will create an INDEX sheet for you with hyper-links to every sheet in your project. It takes 2-seconds!
If you’re not a fan of add-ins, you could simply uninstall the add-in once you’ve created the index sheet. BTW, once the index sheet is created (and it does a good job), you can do a little cosmetic work if you desire. But the tedious part of building the sheet is handled in an instant. Very nice!
-
WSfburg
AskWoody LoungerMarch 16, 2002 at 5:57 pm #576660Ricky,
Here’s some trivial code (never thought I’d hear me say that) that adds a new sheet, called xxSheetTOC, loops thru all the sheets in the workbook including the new one (could be skipped), and adds a link to each sheet in the bunch. I just don’t like add-ins since they take more time at load time. You could pretty this up also – it’s just bare bones. Also, some extra code would be needed if you wanted to run this again after you’ve added a new sheet to update the TOC (either delete the xxSheetTOC if it exists and start again, probably the easiest; or go thru the sheets and add a link to the TOC sheet if not already in the list).
Sub SheetTOC()
Dim sht As Worksheet, shtname As String, i As IntegerSheets.Add ‘add a sheet to left of whatever sheet is current; move if desired
shtname = ActiveSheet.Name
Sheets(shtname).Select
Sheets(shtname).Name = “xxSheetTOC” ‘need unique name
Cells(1, 1) = “Sheet Name”
i = 1For Each sht In ActiveWorkbook.Sheets
i = i + 1
Cells(i, 1).Select
Cells(i, 1) = sht.Name ‘includes the xxSheetTOC
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=””, SubAddress:=sht.Name & “!A1”
Next sht
End Subfred
-
WSAlanMiller
AskWoody LoungerMarch 17, 2002 at 12:42 pm #576765Thanks Fred. Using your code in combination with Jim’s, I can achieve the desired result, to have the active sheet correctly checked in the popup:
Dim sht, n As Integer
Dim small As Boolean
Dim shtname As Stringn = 0
small = True
shtname = ActiveSheet.NameFor Each sht In ActiveWorkbook.Sheets ‘ count sheets
If sht.Visible = -1 Then n = n + 1
Next sht
If n > 16 Then small = FalseSheets(shtname).Select ‘ resets checkmark in popup to active sheet
‘ show appropriate popup
If (small) Then
CommandBars(“Workbook tabs”).ShowPopup
Else
CommandBars(“Workbook tabs”).Controls(“More Sheets…”).Execute
End IfAlan
-
-
Viewing 2 reply threads -

Plus Membership
Donations from Plus members keep this site going. You can identify the people who support AskWoody by the Plus badge on their avatars.
AskWoody Plus members not only get access to all of the contents of this site -- including Susan Bradley's frequently updated Patch Watch listing -- they also receive weekly AskWoody Plus Newsletters (formerly Windows Secrets Newsletter) and AskWoody Plus Alerts, emails when there are important breaking developments.
Get Plus!
Welcome to our unique respite from the madness.
It's easy to post questions about Windows 11, Windows 10, Win8.1, Win7, Surface, Office, or browse through our Forums. Post anonymously or register for greater privileges. Keep it civil, please: Decorous Lounge rules strictly enforced. Questions? Contact Customer Support.
Search Newsletters
Search Forums
View the Forum
Search for Topics
Recent Topics
-
Windows 11, version 24H2 might not download via Windows Server Updates Services
by
Alex5723
13 minutes ago -
Security fixes for Firefox
by
Susan Bradley
1 hour, 50 minutes ago -
Notice on termination of services of LG Mobile Phone Software Updates
by
Alex5723
1 hour, 36 minutes ago -
Update your Apple Devices Wormable Zero-Click Remote Code Execution in AirPlay..
by
Alex5723
10 hours, 42 minutes ago -
Amazon denies it had plans to be clear about consumer tariff costs
by
Alex5723
1 hour, 41 minutes ago -
Return of the brain dead FF sidebar
by
EricB
7 hours, 43 minutes ago -
windows settings managed by your organization
by
WSDavidO61
11 hours, 48 minutes ago -
Securing Laptop for Trustee Administrattor
by
PeachesP
12 hours, 1 minute ago -
The local account tax
by
Susan Bradley
3 hours, 23 minutes ago -
Recall is back with KB5055627(OS Build 26100.3915) Preview
by
Alex5723
23 hours, 43 minutes ago -
Digital TV Antenna Recommendation
by
Win7and10
16 hours, 15 minutes ago -
Server 2019 Domain Controllers broken by updates
by
MP Support
1 day, 11 hours ago -
Google won’t remove 3rd party cookies in Chrome as promised
by
Alex5723
1 day, 13 hours ago -
Microsoft Manager Says macOS Is Better Than Windows 11
by
Alex5723
1 day, 16 hours ago -
Outlook (NEW) Getting really Pushy
by
RetiredGeek
18 hours, 52 minutes ago -
Steps to take before updating to 24H2
by
Susan Bradley
9 hours, 41 minutes ago -
Which Web browser is the most secure for 2025?
by
B. Livingston
23 hours, 18 minutes ago -
Replacing Skype
by
Peter Deegan
11 hours, 51 minutes ago -
FileOptimizer — Over 90 tools working together to squish your files
by
Deanna McElveen
1 day, 10 hours ago -
Excel Macro — ask for filename to be saved
by
nhsj
7 hours, 48 minutes ago -
Trying to backup Win 10 computer to iCloud
by
SheltieMom
11 hours, 38 minutes ago -
Windows 11 Insider Preview build 26200.5570 released to DEV
by
joep517
3 days, 16 hours ago -
Windows 11 Insider Preview build 26120.3941 (24H2) released to BETA
by
joep517
3 days, 18 hours ago -
Windows 11 Insider Preview Build 22635.5305 (23H2) released to BETA
by
joep517
3 days, 18 hours ago -
No April cumulative update for Win 11 23H2?
by
Peobody
2 days, 6 hours ago -
AugLoop.All (TEST Augmentation Loop MSIT)
by
LarryK
3 days, 18 hours ago -
Boot Sequence for Dell Optiplex 7070 Tower
by
Serge Carniol
4 days, 9 hours ago -
OTT Upgrade Windows 11 to 24H2 on Unsupported Hardware
by
bbearren
3 hours, 46 minutes ago -
Inetpub can be tricked
by
Susan Bradley
2 days, 20 hours ago -
How merge Outlook 2016 .pst file w/into newly created Outlook 2024 install .pst?
by
Tex265
3 days, 7 hours ago
Recent blog posts
Key Links
Want to Advertise in the free newsletter? How about a gift subscription in honor of a birthday? Send an email to sb@askwoody.com to ask how.
Mastodon profile for DefConPatch
Mastodon profile for AskWoody
Home • About • FAQ • Posts & Privacy • Forums • My Account
Register • Free Newsletter • Plus Membership • Gift Certificates • MS-DEFCON Alerts
Copyright ©2004-2025 by AskWoody Tech LLC. All Rights Reserved.