ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   retrieving rowlevels (https://www.excelbanter.com/excel-programming/414175-retrieving-rowlevels.html)

Stefi

retrieving rowlevels
 
Hi All,

How can I tetrieve rowlevels last set?
E.g.

After executing
ActiveSheet.Outline.ShowLevels RowLevels:=3
I want to retrieve 3.

Thanks,
Stefi


Dave Peterson

retrieving rowlevels
 
I think you're going to have to loop through the cells to find it.

I saved this from a longgggggg time ago. Maybe it'll give you an idea.

Option Explicit
Sub testme99()
Dim myRange As Range
Dim myCell As Range
Dim maxLevel As Long

With ActiveSheet
Set myRange = Intersect(.Columns(1), .UsedRange) _
.SpecialCells(xlCellTypeVisible)

maxLevel = 0
For Each myCell In myRange.Cells
If myCell.EntireRow.OutlineLevel maxLevel Then
maxLevel = myCell.EntireRow.OutlineLevel
End If
Next myCell

End With
MsgBox "Largest visible level: " & maxLevel

End Sub

It just cycles through the visible cells in column A and checks to see if that's
the biggest one found.

Stefi wrote:

Hi All,

How can I tetrieve rowlevels last set?
E.g.

After executing
ActiveSheet.Outline.ShowLevels RowLevels:=3
I want to retrieve 3.

Thanks,
Stefi


--

Dave Peterson

Stefi

retrieving rowlevels
 
Thanks, Dave, I hoped Excel provides a simple answer to this question. The
only key I found in Help was OutlineLevel property and I hardly beleived that
one has to scan all cells to retrieve this information.

Anyway, I'm going to use your code, you have spared some time for me.

Regards,
Stefi


Dave Peterson ezt *rta:

I think you're going to have to loop through the cells to find it.

I saved this from a longgggggg time ago. Maybe it'll give you an idea.

Option Explicit
Sub testme99()
Dim myRange As Range
Dim myCell As Range
Dim maxLevel As Long

With ActiveSheet
Set myRange = Intersect(.Columns(1), .UsedRange) _
.SpecialCells(xlCellTypeVisible)

maxLevel = 0
For Each myCell In myRange.Cells
If myCell.EntireRow.OutlineLevel maxLevel Then
maxLevel = myCell.EntireRow.OutlineLevel
End If
Next myCell

End With
MsgBox "Largest visible level: " & maxLevel

End Sub

It just cycles through the visible cells in column A and checks to see if that's
the biggest one found.

Stefi wrote:

Hi All,

How can I tetrieve rowlevels last set?
E.g.

After executing
ActiveSheet.Outline.ShowLevels RowLevels:=3
I want to retrieve 3.

Thanks,
Stefi


--

Dave Peterson


Dave Peterson

retrieving rowlevels
 
I had that same feeling!

Stefi wrote:

Thanks, Dave, I hoped Excel provides a simple answer to this question. The
only key I found in Help was OutlineLevel property and I hardly beleived that
one has to scan all cells to retrieve this information.

Anyway, I'm going to use your code, you have spared some time for me.

Regards,
Stefi

Dave Peterson ezt *rta:

I think you're going to have to loop through the cells to find it.

I saved this from a longgggggg time ago. Maybe it'll give you an idea.

Option Explicit
Sub testme99()
Dim myRange As Range
Dim myCell As Range
Dim maxLevel As Long

With ActiveSheet
Set myRange = Intersect(.Columns(1), .UsedRange) _
.SpecialCells(xlCellTypeVisible)

maxLevel = 0
For Each myCell In myRange.Cells
If myCell.EntireRow.OutlineLevel maxLevel Then
maxLevel = myCell.EntireRow.OutlineLevel
End If
Next myCell

End With
MsgBox "Largest visible level: " & maxLevel

End Sub

It just cycles through the visible cells in column A and checks to see if that's
the biggest one found.

Stefi wrote:

Hi All,

How can I tetrieve rowlevels last set?
E.g.

After executing
ActiveSheet.Outline.ShowLevels RowLevels:=3
I want to retrieve 3.

Thanks,
Stefi


--

Dave Peterson


--

Dave Peterson

Stefi

retrieving rowlevels
 
Hi Dave,

I'm satisfied not being alone with my opinion. Anyway, the code works
perfectly, I created a function from it.

Regards,
Stefi

Dave Peterson ezt *rta:

I had that same feeling!

Stefi wrote:

Thanks, Dave, I hoped Excel provides a simple answer to this question. The
only key I found in Help was OutlineLevel property and I hardly beleived that
one has to scan all cells to retrieve this information.

Anyway, I'm going to use your code, you have spared some time for me.

Regards,
Stefi

âžDave Peterson❠ezt Ã*rta:

I think you're going to have to loop through the cells to find it.

I saved this from a longgggggg time ago. Maybe it'll give you an idea.

Option Explicit
Sub testme99()
Dim myRange As Range
Dim myCell As Range
Dim maxLevel As Long

With ActiveSheet
Set myRange = Intersect(.Columns(1), .UsedRange) _
.SpecialCells(xlCellTypeVisible)

maxLevel = 0
For Each myCell In myRange.Cells
If myCell.EntireRow.OutlineLevel maxLevel Then
maxLevel = myCell.EntireRow.OutlineLevel
End If
Next myCell

End With
MsgBox "Largest visible level: " & maxLevel

End Sub

It just cycles through the visible cells in column A and checks to see if that's
the biggest one found.

Stefi wrote:

Hi All,

How can I tetrieve rowlevels last set?
E.g.

After executing
ActiveSheet.Outline.ShowLevels RowLevels:=3
I want to retrieve 3.

Thanks,
Stefi

--

Dave Peterson


--

Dave Peterson


Dave Peterson

retrieving rowlevels
 
Remember that there is no safety in numbers <vbg.

Stefi wrote:

Hi Dave,

I'm satisfied not being alone with my opinion. Anyway, the code works
perfectly, I created a function from it.

Regards,
Stefi

Dave Peterson ezt *rta:

I had that same feeling!

Stefi wrote:

Thanks, Dave, I hoped Excel provides a simple answer to this question. The
only key I found in Help was OutlineLevel property and I hardly beleived that
one has to scan all cells to retrieve this information.

Anyway, I'm going to use your code, you have spared some time for me.

Regards,
Stefi

âžDave Peterson❠ezt Ã*rta:

I think you're going to have to loop through the cells to find it.

I saved this from a longgggggg time ago. Maybe it'll give you an idea.

Option Explicit
Sub testme99()
Dim myRange As Range
Dim myCell As Range
Dim maxLevel As Long

With ActiveSheet
Set myRange = Intersect(.Columns(1), .UsedRange) _
.SpecialCells(xlCellTypeVisible)

maxLevel = 0
For Each myCell In myRange.Cells
If myCell.EntireRow.OutlineLevel maxLevel Then
maxLevel = myCell.EntireRow.OutlineLevel
End If
Next myCell

End With
MsgBox "Largest visible level: " & maxLevel

End Sub

It just cycles through the visible cells in column A and checks to see if that's
the biggest one found.

Stefi wrote:

Hi All,

How can I tetrieve rowlevels last set?
E.g.

After executing
ActiveSheet.Outline.ShowLevels RowLevels:=3
I want to retrieve 3.

Thanks,
Stefi

--

Dave Peterson


--

Dave Peterson


--

Dave Peterson


All times are GMT +1. The time now is 10:16 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com