Thread: activecell
View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Dave Peterson[_3_] Dave Peterson[_3_] is offline
external usenet poster
 
Posts: 2,824
Default activecell

I just try to slough(?) it off to typos <vbg.



"Norman Jones" wrote in message ...
Hi Dave,

Thank you and :yes, yes and yes.

As you may have suspected, lazily adopting the path of least
resistance,rather than writing from scratch, I adapted a macro that I
frequently use for autofilter navigation. With my brain in neutral, I
merged my Rng and Rng1 variables and failed to adjust the offset. Of course
limited testing produced no discrepancies. On balance a shoddy effort!


---
Regards,
Norman



"Dave Peterson" wrote in message
...
If no rows were visible after the filter, then this selected the cell in
the row
below the autofilter range.

This line:
Set rng = Range(rng.Offset(1, 0), rng(rng.Count))
actually just offset the range by one row. I bet you wanted something
like:

Set rng = rng.Resize(rng.Rows.Count - 1).Offset(1, 0)

But using a single variable causes some trouble too.

Set rng = ActiveSheet.AutoFilter.Range
Set rng = rng.Resize(rng.Rows.Count - 1).Offset(1, 0)
On Error Resume Next
Set rng = rng.SpecialCells(xlVisible)
On Error GoTo 0

If the rng.specialcells(xlvisible) causes an error, rng isn't set to
Nothing.
It doesn't change from what it was before.

It might be easier to use another variable, kind of:

Sub Tester03b()

Dim rng As Range
Dim rngF As Range

Set rng = ActiveSheet.AutoFilter.Range
Set rng = rng.Resize(rng.Rows.Count - 1).Offset(1, 0)

Set rngF = Nothing
On Error Resume Next
Set rngF = rng.SpecialCells(xlVisible)
On Error GoTo 0

If Not rngF Is Nothing Then
rngF(1).Select
End If

End Sub

Norman Jones wrote:

Hi Slikity,

Try

Sub Tester03()
Dim rng As Range

Set rng = ActiveSheet.AutoFilter.Range
Set rng = Range(rng.Offset(1, 0), rng(rng.Count))
On Error Resume Next
Set rng = rng.SpecialCells(xlVisible)
On Error GoTo 0
If Not rng Is Nothing Then
rng(1).Select
End If
End Sub

---
Regards,
Norman

"slikity" wrote in message
...
After filtering in VBA, how do you make the first
filtered cell active?


--

Dave Peterson