Hide Rows Based on Cell Result

  • Thread starter Thread starter BJ
  • Start date Start date
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
 
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.
 
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

Back
Top