Option Explicit
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Intersect(Target, Sh.Range("L8")) Is Nothing Then Exit Sub
If Sh.Range("L8").Value <> "University-wide" And Sh.Range("L8").Value <> "College by College" Then Exit Sub
Application.EnableEvents = False
'only sheet 6 is really correct (probably). Rest need to be made specific
Call ShowHide("Sheet2", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet3", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet6", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet8", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet12", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet13", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet26", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet27", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet29", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet40", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Call ShowHide("Sheet41", Sh.Range("L8"), "48:216", "10:47,217:218", "10:30,47:220", "31:46")
Application.EnableEvents = True
End Sub
Private Sub ShowHide(ws As String, UorC As String, Uhide As String, Ushow As String, Chide As String, Cshow As String)
With Worksheets(ws)
.Range("L8").Value = UorC
Select Case UorC
Case Is = "University-wide"
.Rows(Uhide).Hidden = True
.Rows(Ushow).Hidden = False
Case Is = "College by College"
.Rows(Cshow).Hidden = False
.Range(Chide).Hidden = True
End Select
End With
End Sub