Rows Property

Microsoft Excel Visual Basic

For an Application object, returns a Range object that represents all the rows on the active worksheet. If the active document isn’t a worksheet, the Rows property fails. For a Range object, returns a Range object that represents the rows in the specified range. For a Worksheet object, returns a Range object that represents all the rows on the specified worksheet. Read-only Range object.

Remarks

For information about returning a single member of a collection, see Returning an Object from a Collection.

Using this property without an object qualifier is equivalent to using ActiveSheet.Rows.

When applied to a Range object that’s a multiple selection, this property returns rows from only the first area of the range. For example, if the Range object has two areas— A1:B2 and C3:D4— Selection.Rows.Count returns 2, not 4. To use this property on a range that may contain a multiple selection, test Areas.Count to determine whether the range is a multiple selection. If it is, loop over each area in the range, as shown in the third example.

Example

This example deletes row three on Sheet1.

Worksheets("Sheet1").Rows(3).Delete
		

This example deletes rows in the current region on worksheet one where the value of cell one in the row is the same as the value in cell one in the previous row.

For Each rw In Worksheets(1).Cells(1, 1).CurrentRegion.Rows
    this = rw.Cells(1, 1).Value
    If this = last Then rw.Delete
    last = this
Next
		

This example displays the number of rows in the selection on Sheet1. If more than one area is selected, the example loops through each area.

Worksheets("Sheet1").Activate
areaCount = Selection.Areas.Count
If areaCount <= 1 Then
    MsgBox "The selection contains " & _
        Selection.Rows.Count & " rows."
Else
    i = 1
    For Each a In Selection.Areas
        MsgBox "Area " & i & " of the selection contains " & _
            a.Rows.Count & " rows."
        i = i + 1
    Next a
End If