Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.misc
|
|||
|
|||
Workbook tabs
Is it possible to index into a specific tab in a workbook w/ multiple tabs.
I have a workbook w/ a couple dozen tabs. It would be helpful to be able to quickly to to the nth tab without having to scroll through all of them using the scroll bars at the bottom of the workbook. |
#2
Posted to microsoft.public.excel.misc
|
|||
|
|||
Workbook tabs
Dave
You can right-click on the navigation arrows at lower left to see a list of 15 sheets plus"more sheets". One other method is to set up an index sheet with hyperlinks to sheets or do what I prefer................ Use VBA code from Bob Phillips.............. Sub BrowseSheets() Const nPerColumn As Long = 38 'number of items per column Const nWidth As Long = 13 'width of each letter Const nHeight As Long = 18 'height of each row Const sID As String = "___SheetGoto" 'name of dialog sheet Const kCaption As String = " Select sheet to goto" 'dialog caption Dim i As Long Dim TopPos As Long Dim iBooks As Long Dim cCols As Long Dim cLetters As Long Dim cMaxLetters As Long Dim cLeft As Long Dim thisDlg As DialogSheet Dim CurrentSheet As Worksheet Dim cb As OptionButton Application.ScreenUpdating = False If ActiveWorkbook.ProtectStructure Then MsgBox "Workbook is protected.", vbCritical Exit Sub End If On Error Resume Next Application.DisplayAlerts = False ActiveWorkbook.DialogSheets(sID).Delete Application.DisplayAlerts = True On Error GoTo 0 Set CurrentSheet = ActiveSheet Set thisDlg = ActiveWorkbook.DialogSheets.Add With thisDlg .Name = sID .Visible = xlSheetHidden 'sets variables for positioning on dialog iBooks = 0 cCols = 0 cMaxLetters = 0 cLeft = 78 TopPos = 40 For i = 1 To ActiveWorkbook.Worksheets.Count If i Mod nPerColumn = 1 Then cCols = cCols + 1 TopPos = 40 cLeft = cLeft + (cMaxLetters * nWidth) cMaxLetters = 0 End If Set CurrentSheet = ActiveWorkbook.Worksheets(i) cLetters = Len(CurrentSheet.Name) If cLetters cMaxLetters Then cMaxLetters = cLetters End If iBooks = iBooks + 1 .OptionButtons.Add cLeft, TopPos, cLetters * nWidth, 16.5 .OptionButtons(iBooks).text = _ ActiveWorkbook.Worksheets(iBooks).Name TopPos = TopPos + 13 Next i .Buttons.Left = cLeft + (cMaxLetters * nWidth) + 24 CurrentSheet.Activate With .DialogFrame .Height = Application.Max(68, _ Application.Min(iBooks, nPerColumn) * nHeight + 10) .Width = cLeft + (cMaxLetters * nWidth) + 24 .Caption = kCaption End With .Buttons("Button 2").BringToFront .Buttons("Button 3").BringToFront Application.ScreenUpdating = True If .Show Then For Each cb In thisDlg.OptionButtons If cb.Value = xlOn Then ActiveWorkbook.Worksheets(cb.Caption).Select Exit For End If Next cb Else MsgBox "Nothing selected" End If Application.DisplayAlerts = False .Delete End With End Sub Gord Dibben MS Excel MVP On Thu, 7 Sep 2006 14:13:02 -0700, Dave wrote: Is it possible to index into a specific tab in a workbook w/ multiple tabs. I have a workbook w/ a couple dozen tabs. It would be helpful to be able to quickly to to the nth tab without having to scroll through all of them using the scroll bars at the bottom of the workbook. Gord Dibben MS Excel MVP |
#3
Posted to microsoft.public.excel.misc
|
|||
|
|||
Workbook tabs
If you right click on the tab scrolling buttons it shows a vertical list of
all tabs and you can quickly select from that list. "Dave" wrote: Is it possible to index into a specific tab in a workbook w/ multiple tabs. I have a workbook w/ a couple dozen tabs. It would be helpful to be able to quickly to to the nth tab without having to scroll through all of them using the scroll bars at the bottom of the workbook. |
#4
Posted to microsoft.public.excel.misc
|
|||
|
|||
Workbook tabs
Many Thanks. This helps quite a bit.
Cheers, Dave "Gord Dibben" wrote: Dave You can right-click on the navigation arrows at lower left to see a list of 15 sheets plus"more sheets". One other method is to set up an index sheet with hyperlinks to sheets or do what I prefer................ Use VBA code from Bob Phillips.............. Sub BrowseSheets() Const nPerColumn As Long = 38 'number of items per column Const nWidth As Long = 13 'width of each letter Const nHeight As Long = 18 'height of each row Const sID As String = "___SheetGoto" 'name of dialog sheet Const kCaption As String = " Select sheet to goto" 'dialog caption Dim i As Long Dim TopPos As Long Dim iBooks As Long Dim cCols As Long Dim cLetters As Long Dim cMaxLetters As Long Dim cLeft As Long Dim thisDlg As DialogSheet Dim CurrentSheet As Worksheet Dim cb As OptionButton Application.ScreenUpdating = False If ActiveWorkbook.ProtectStructure Then MsgBox "Workbook is protected.", vbCritical Exit Sub End If On Error Resume Next Application.DisplayAlerts = False ActiveWorkbook.DialogSheets(sID).Delete Application.DisplayAlerts = True On Error GoTo 0 Set CurrentSheet = ActiveSheet Set thisDlg = ActiveWorkbook.DialogSheets.Add With thisDlg .Name = sID .Visible = xlSheetHidden 'sets variables for positioning on dialog iBooks = 0 cCols = 0 cMaxLetters = 0 cLeft = 78 TopPos = 40 For i = 1 To ActiveWorkbook.Worksheets.Count If i Mod nPerColumn = 1 Then cCols = cCols + 1 TopPos = 40 cLeft = cLeft + (cMaxLetters * nWidth) cMaxLetters = 0 End If Set CurrentSheet = ActiveWorkbook.Worksheets(i) cLetters = Len(CurrentSheet.Name) If cLetters cMaxLetters Then cMaxLetters = cLetters End If iBooks = iBooks + 1 .OptionButtons.Add cLeft, TopPos, cLetters * nWidth, 16.5 .OptionButtons(iBooks).text = _ ActiveWorkbook.Worksheets(iBooks).Name TopPos = TopPos + 13 Next i .Buttons.Left = cLeft + (cMaxLetters * nWidth) + 24 CurrentSheet.Activate With .DialogFrame .Height = Application.Max(68, _ Application.Min(iBooks, nPerColumn) * nHeight + 10) .Width = cLeft + (cMaxLetters * nWidth) + 24 .Caption = kCaption End With .Buttons("Button 2").BringToFront .Buttons("Button 3").BringToFront Application.ScreenUpdating = True If .Show Then For Each cb In thisDlg.OptionButtons If cb.Value = xlOn Then ActiveWorkbook.Worksheets(cb.Caption).Select Exit For End If Next cb Else MsgBox "Nothing selected" End If Application.DisplayAlerts = False .Delete End With End Sub Gord Dibben MS Excel MVP On Thu, 7 Sep 2006 14:13:02 -0700, Dave wrote: Is it possible to index into a specific tab in a workbook w/ multiple tabs. I have a workbook w/ a couple dozen tabs. It would be helpful to be able to quickly to to the nth tab without having to scroll through all of them using the scroll bars at the bottom of the workbook. Gord Dibben MS Excel MVP |
#5
Posted to microsoft.public.excel.misc
|
|||
|
|||
Workbook tabs
Hi Dave!
You can set up hyperlinks in each spreadsheet. This way you can jump to tab you require. Hope that help. Zia "Dave" wrote: Is it possible to index into a specific tab in a workbook w/ multiple tabs. I have a workbook w/ a couple dozen tabs. It would be helpful to be able to quickly to to the nth tab without having to scroll through all of them using the scroll bars at the bottom of the workbook. |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
sort tabs in a workbook other than one at a time with move or cop. | Excel Worksheet Functions | |||
Is there a keystroke to go between tabs in a workbook? | Excel Worksheet Functions | |||
Auto naming Tabs in a Workbook | Excel Discussion (Misc queries) | |||
How do I move the worksheet tabs to the top of the workbook? | Excel Discussion (Misc queries) | |||
Tabs in my workbook are hidden | Excel Discussion (Misc queries) |