Rows プロパティ・Columns プロパティ
Rows プロパティは、オブジェクトに WorkSheet オブジェクトを指定した場合、その指定されたワークシートに対して、オブジェクトを指定しない場合はアクティブなワークシートに対して、指定した行全体のセル範囲を取得します。
また、任意のセル範囲に対しては、その範囲内での行全体のセル範囲を取得します。
Columns プロパティは、オブジェクトに WorkSheet オブジェクトを指定した場合、その指定されたワークシートに対して、オブジェクトを指定しない場合はアクティブなワークシートに対して、指定した列全体のセル範囲を取得します。
また、任意のセル範囲に対しては、その範囲内での列全体のセル範囲を取得します。
戻り値は、セル範囲を表す Range オブジェクトです。
Object.Rows ( rowindex )
Object.Columns ( colindex )
引数・戻り値
- object ・・・ 対象となる Application オブジェクト, Worksheet オブジェクト, Range オブジェクト(省略した場合は、アクティブなワークシートを参照対象とします。)
- rowindex ・・・ 行番号(整数値)または範囲を表す文字列を指定します。
(単一行を指定する場合)
【例(行番号)】Rows(2)
【例(文字列)】Rows(“3”)(複数行を指定する場合)
【例(文字列)】Rows(“2:5”) - colindex ・・・ 列番号(整数値)または範囲を表す文字列をしてします。
(単一列を指定する場合)
【例(列番号)】Columns(2)
【例(文字列)】Columns(“C”)(複数列を指定する場合)
【例(文字列)】Columns(“A:E”)
引数 rowindex 、colindex を省略した場合、Rows プロパティ、Columns プロパティいずれも対象オブジェクトのすべての行・列を参照します。
引数 rowindex、に指定する行番号あるいは範囲を表す文字列は、対象がワークシートの場合、通常、1以上の数値を指定します。1未満の数値を指定するとエラーとなります。
(例)
Rows(1) ⇒ シートの1行目
Rows(“1:3”) ⇒ シートの1列目から3列目(A列からC列)
Rows(-1) ⇒ エラー
Rows(“0:3”) ⇒ エラー
対象がセル範囲の場合は、引数に1を指定した場合、Row プロパティの場合は、範囲内での1行目を参照します。また、0 を指定すると対象のセル範囲より1つ上の行を、1 を指定すると対象のセル範囲より2つ上の行を参照します。ただし、そこにセルが存在しない場合はエラーとなります。
(例)
Range(“C3:I8”).Rows(1) ⇒ シートの3行目
Range(“C3:I8”).Rows(0) ⇒ シートの2行目
Range(“C3:I8”).Rows(-1) ⇒ シートの1行目
Range(“C3:I8”).Rows(-2) ⇒ エラー
Range(“C3:I8”).Rows(7) ⇒ シートの9行目
引数 colindex に指定する列番号には、対象がワークシートの場合、通常、1以上の数値を指定します。1未満の数値を指定するとエラーとなります。
(例)
Columns(1) ⇒ シートの1列目
Columns(-2) ⇒ エラー
対象がセル範囲の場合は、引数に1を指定した場合、Columns プロパティの場合は、範囲内での1列目を参照します。また、0 を指定すると対象のセル範囲より1つ左の列を、1 を指定すると対象のセル範囲より2つ左の列を参照します。ただし、そこにセルが存在しない場合はエラーとなります。
(例)
Range(“C3:I8”).Columns(1) ⇒ シートの3列目(C列)
Range(“C3:I8”).Rows(0) ⇒ シートの2列目(B列)
Range(“C3:I8”).Rows(-1) ⇒ シートの1列目(A列)
Range(“C3:I8”).Rows(-2) ⇒ エラー
Range(“C3:I8”).Rows(7) ⇒ シートの9列目(I列)
Rows プロパティ・Columns プロパティの使用例
サンプルVBAソース その1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
Sub Sample_Rows() Range("C4:J16").Name = "成績表" '5行目 Debug.Print Rows(5).Address '2行目から7行目 Debug.Print Rows("2:7").Address 'C4からJ4 Debug.Print Range("成績表").Rows(1).Address 'C4からJ16 Debug.Print Range("成績表").Rows.Address 'C1からJ1 Debug.Print Range("成績表").Rows(-2).Address 'セル全体 Debug.Print Rows.Address 'セル全体の行数 Debug.Print Rows.Count End Sub |
実行結果(Rows プロパティ)
サンプルVBAソース その2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
Sub Sample_Columns() Range("A4:H16").Name = "成績表" 'E列 Debug.Print Columns(5).Address 'A列からC列 Debug.Print Columns("A:C").Address 'A4からA16 Debug.Print Range("成績表").Columns(1).Address 'A4からH16 Debug.Print Range("成績表").Columns.Address 'A4からB16 Debug.Print Range("成績表").Columns("A:B").Address 'セル全体 Debug.Print Columns.Address 'セル全体の列数 Debug.Print Columns.Count End Sub |