Range.Rows プロパティ (Excel)
指定した範囲の行を表す Range オブジェクトを返します。
構文
式。行
expression は Range オブジェクトを表す変数です。
注釈
1 つの行を返すには、 Item プロパティを使用するか、同じインデックスをかっこで囲みます。 たとえば、 と Selection.Rows.Item(1)
の両方Selection.Rows(1)
は、選択範囲の最初の行を返します。
複数の選択範囲の Range オブジェクトに適用すると、このプロパティは範囲の最初の領域からのみ行を返します。 たとえば、 Range オブジェクト someRange
に 2 つの領域 (A1:B2 と C3:D4) がある場合、someRange.Rows.Count
4 ではなく 2 が返されます。 複数のセル範囲を選択している可能性があるときは、このプロパティを使用する前に Areas.Count を実行し、範囲に複数の領域が含まれているかどうかを確認します。 複数の領域が含まれている場合は、3 番目の例のようにセル範囲の領域ごとにループします。
返される範囲は、指定された範囲の外であることがあります。 たとえば、Range("A1:B2").Rows(5)
はセル A5:B5 を返します。 詳細については、Item プロパティに関する ページ を参照してください。
オブジェクト修飾子を指定せずに Rows プロパティを使用することは、 ActiveSheet.Rows の使用と同じです。 詳細については、 Worksheet.Rows プロパティを参照してください。
例
次の使用例は、作業中のブックの Sheet1 の範囲 B5:Z5 を削除します。
Worksheets("Sheet1").Range("B2:Z44").Rows(3).Delete
次の使用例は、作業中のブックのワークシート 1 の現在の領域の行を削除します。この行のセル 1 の値は、前の行のセル 1 の値と同じです。
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
次の使用例は、シート 1 の選択範囲の行数を表示します。 複数の領域が選択されている場合は、領域ごとにループします。
Public Sub ShowNumberOfRowsInSheet1Selection
Worksheets("Sheet1").Activate
Dim selectedRange As Excel.Range
Set selectedRange = Selection
Dim areaCount As Long
areaCount = Selection.Areas.Count
If areaCount <= 1 Then
MsgBox "The selection contains " & _
Selection.Rows.Count & " rows."
Else
Dim areaIndex As Long
areaIndex = 1
For Each area In Selection.Areas
MsgBox "Area " & areaIndex & " of the selection contains " & _
area.Rows.Count & " rows."
areaIndex = areaIndex + 1
Next
End If
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。