Hide Rows Based on Cell Result

B

BJ

Hi All

Having difficulty and full disclosure - ** VB Newbie **

I would like to hide rows e.g., 20-25, 51 and 80-90 if the value in cell L15
= "Additional" and expose these same rows if the value in cell L15 = "Final"

Cell L15 is set up using Data | Validation | List | Additional,Final

Any help is appreciated greatly.

Brett
 
D

Dave Peterson

Rightclick on the worksheet tab that should have this behavior. Select View
code and paste this into the code window that just opened.

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Me.Range("L15")) Is Nothing Then
Exit Sub
End If

Me.Range("20:25,51:51,80:90").EntireRow.Hidden _
= CBool(LCase(Target.Value) <> LCase("final"))

End Sub

It actually shows the rows if that cell is "final". Anything else (blank, too!)
and the rows are hidden.
 
B

BJ

Mr. Peterson you rule! Thanks so much.

Dave Peterson said:
Rightclick on the worksheet tab that should have this behavior. Select View
code and paste this into the code window that just opened.

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Me.Range("L15")) Is Nothing Then
Exit Sub
End If

Me.Range("20:25,51:51,80:90").EntireRow.Hidden _
= CBool(LCase(Target.Value) <> LCase("final"))

End Sub

It actually shows the rows if that cell is "final". Anything else (blank, too!)
and the rows are hidden.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top