View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
J.E. McGimpsey J.E. McGimpsey is offline
external usenet poster
 
Posts: 493
Default EntireRow.Hidden

Your Sub ERROR works for me...

Here's one way to hide all the rows at once:

Public Sub HideRed()
Dim c As Range
Dim hideRange As Range
For Each c In Range("A1:A" & _
Range("A" & Rows.Count).End(xlUp).Row)
If c.Value = "Red" Then
If hideRange Is Nothing Then
Set hideRange = c
Else
Set hideRange = Union(hideRange, c)
End If
End If
Next c
If Not hideRange Is Nothing Then _
hideRange.EntireRow.Hidden = True
End Sub





In article ,
"Jonas Haettner" wrote:

Hi!

Why doesn't Sub ERROR work (se below)? I use the same
syntax.

What I really want to do is to find the fastest way of
hide rows in a column that meets a condition. The ultimate
would be to hide every row in one operation instead of
using a loop.

Sub OK()
Do While lRow < lEndRow
If Cells(lRow, 1) < "Red" Then
Rows(lRow).EntireRow.Hidden = True
End If
lRow = lRow + 1
Loop
End Sub

Sub ERROR()
For Each c In [A1:A1000]
If c.Value Like "Red" Then
Rows(c.Row).EntireRow.Hidden = True
End If
Next
End Sub

/jonas