Sheet Ranges Possible?
Option Compare Text
Sub Hide_Shts()
whichone = InputBox("Enter your choice..First, Middle or Last")
Application.Run "SheetMode", whichone
End Sub
Public Sub SheetMode(ByVal Mode As String)
Set First = Worksheets(Array("Sheet1", "Sheet2", "Sheet3"))
Set Middle = Worksheets(Array("Sheet4", "Sheet5", "Sheet6"))
Set Last = Worksheets(Array("Sheet7", "Sheet8", "Sheet9"))
' Turn off screen and events
Application.ScreenUpdating = False
Application.EnableEvents = False
' Show all to prevent no sheets visible error
For Each ws In ThisWorkbook.Worksheets
ws.Visible = xlSheetVisible
Next ws
'Hide unwanted sheets
Select Case Mode
'Code to Hide Middle & Last Sheet Ranges
Case "First"
Middle.Visible = False
Last.Visible = False
Case "Middle"
'Code to Hide First & Last Sheet Ranges
First.Visible = False
Last.Visible = False
Case "Last"
'Code to Hide First & Middle Sheet Ranges
Middle.Visible = False
First.Visible = False
End Select
' Turn on screen and events
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Gord Dibben MS Excel MVP
On Sun, 31 Dec 2006 14:12:22 -0500, None wrote:
Is it possible to assign sheets to a range instead of cells? I am not
sure to code it, can someone please help? Here is a simple example of
what I would like to do.
Given : Lets say I have 9 worksheets, but only want 3 sheets visible
at a time.
workSheets 1-3 = Range1 (First)
workSheets 4-6 = Range2 (Middle)
workSheets 7-9 = Range3 (Last)
Public Sub SheetMode(ByVal Mode As String)
‘ Turn off screen and events
Application.ScreenUpdating = False
Application.EnableEvents = False
‘ Show all to prevent no sheets visible error
For Each ws In ThisWorkbook.Worksheets
ws.Visible = xlSheetVisible
Next ws
'Hide unwanted sheets
Select Case Mode
Case "First"
'Code to Hide Middle & Last Sheet Ranges
Case "Middle"
'Code to Hide First & Last Sheet Ranges
Case "Last"
'Code to Hide First & Middle Sheet Ranges
End Select
‘ Turn on screen and events
Application.ScreenUpdating = True
Application.EnableEvents = True
End sub
|