セルを参照する(Cells プロパティ)
Cells プロパティ
Cells プロパティは、ワークシートの行番号と列番号を指定してセルを参照します。
戻り値は、セル範囲を表すRange オブジェクトです。
Object.Cells ( row, col )
Object.Cells ( num )
引数・戻り値
- object ・・・ 対象となる Application、 Worksheet、 Range オブジェクト。省略するとアクティブなシートの Range プロパティとみなされます。
- row ・・・ 対象のセルの行番号(整数)を指定します。
- col ・・・ 対象のセルの列番号(整数)を指定します。
- num ・・・ 整数の値(連続したセル範囲の左上のセルを 1 として、右方向へ 2,3,4,5 … と右下のセルまでに割り当てられた数値)を指定します。
引数を省略した場合
Cells.Select のように引数を省略すると選択されているシートのすべてのセルを参照します。
引数に変数を利用する
Cells( i, j ) や Cells( k ) のように引数 row や col や num に変数を指定し、変数をループさせることで、複数のセルにアクセスし値を取得したりスタイルを設定したりすることができます。
Cells プロパティ の使用例
サンプル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 29 30 |
Sub Sample_Cells() 'セル「A1」 Debug.Print ActiveSheet.Cells(1).Address(False, False) 'セル「B1」 Debug.Print Cells(2).Address(False, False) 'セル「C1」 Debug.Print ActiveWindow.ActiveSheet.Cells(3).Address(False, False) 'セル「B1」行番号を省略(⇒1行目になる) Debug.Print Cells(, 1).Address(False, False) 'セル「A2」(番号は左から右、上から下) Debug.Print Cells(16385).Address(False, False) '範囲を選択 Debug.Print Range(Cells(1), Cells(3)).Address(False, False) 'セル全体を選択 Debug.Print ActiveSheet.Cells.Address(False, False) 'セル全体を選択 Debug.Print Cells.Address(False, False) End Sub |
実行結果 その1
サンプルVBAソース その2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
Sub Sample_Cells2() '全教科の総得点と平均点(小数点以下2桁まで表示)を求める(その1) Dim i, j, total, cnt For i = 2 To 11 For j = 2 To 6 total = total + Cells(i, j).Value cnt = cnt + 1 Next j Next i MsgBox "合計得点:" & total & Chr(13) & "平均得点:" & Format(total / cnt, "0.00") End Sub |
実行結果 その2
ワークシート表示
実行後
サンプルVBAソース その3
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 |
Sub Sample_Cells3() '全教科の総得点と平均点(小数点以下2桁まで表示)を求める(その2) Dim i, total, avg, myRange Set myRange = Range("B2:F11") With myRange For i = 1 To .Count total = total + .Cells(i) Next i avg = Format(total / .Count, "0.00") End With MsgBox "合計得点:" & total & Chr(13) & "平均得点:" & avg End Sub |
実行結果 その3
ワークシート表示
実行後
関連記事
-
-
セルが結合セルの一部である場合、その結合セルの範囲を取得(MergeArea プロパティ)
MergeArea プロパティ MergeArea プロパティは、指定したセルが …
-
-
列名を取得、列番号を取得(Address プロパティ,Column プロパティ)
列番号を取得する セル番地(「A1」や「B3」)や列名(「A」「B」「C」 …
-
-
A1参照形式、R1C1参照形式の設定・取得(ReferenceStyle プロパティ)
ReferenceStyle プロパティ ReferenceStyle プロパテ …
-
-
セルに値を設定する・セルの値を参照する(Value2 プロパティ)
Value2 プロパティ Value プロパティとの違いは、Value2 プロパ …
-
-
対象のセル・セル範囲に数式があるかどうか調べる(HasFormula プロパティ)
HasFormula プロパティ HasFormula プロパティは、対象のセル …
-
-
並べ替え(Sort メソッド)
Sort メソッド 任意のセル範囲内で、並べ替えを行います。引数で、並べ替えの条 …
-
-
AutoFilter オブジェクト(メソッド・プロパティ)
AutoFilter.ShowAllData メソッド AutoFilter.S …
-
-
セル内部を参照(Interior プロパティ)
Interior プロパティ Interior プロパティで、セルの内部を参照し …
-
-
オートフィルタ(アイコンで抽出する)AutoFilter メソッド
オートフィルタ(アイコンで抽出する) Excel 2007 から、条件付き書式で …
-
-
並べ替え(Sort オブジェクト, SortFields コレクション)
Sort オブジェクトによる並べ替え Excel 2007 以降のバージョンでの …