ExcelマクロVBA入門 | 第11回.RangeとCellsの使い方 | Excelマクロの基礎と応用、エクセルVBAの入門・初級・初心者向け解説



第11回.RangeとCellsの使い方


セルを指定する方法がいろいろある事を、前回までに説明しましたが、


では、実務でのマクロVBAでは、どう使い分けていくかが問題です。


実践では、基本的には、Cellsを使います。


Rangeを使うのは、


・固定位置のセルの場合

・セル範囲(複数セル)の場合

このどちらかになります。


時々、こんな指定を見かけます、


Range("A" & i)


iは変数で、数値が入っている訳ですが、

(変数については、次回に説明します。)

こんな使い方はしないで下さい。


はっきり言って、見苦しいです。


まずは、1つのセルを指定する場合は、


Cells(行, 列)


のように書いて下さい。


そして、セル範囲の場合は、


Range(始点セル, 終点セル)


の、始点セルと終点セルに、Cellsを指定して、


Range(Cells(行, 列), Cells(行, 列))


として下さい。


例えば、A1セルから、C5セルなら


Range(Cells(1, 1), Cells(5, 3))


となります。

また、


複数行の場合、1行から5行なら、


Range(Rows(1), Rows(5))


複数列の場合、1列(A列)から3列(C列)なら、


Range(Columns(1), Columns(3))


のように指定します。


上記では、固定数値で書いていますが、マクロでは、この数値部分が変数になる訳です。


最初に書いたように、固定位置で、条件によって変化する事が無い場合は、


Range("A1:C5")

Range("1:5")

Range("A:C")


で良いでしょう。



単純に言えば、変数を使う時は、Cells、Rows、Columnsを使用すると言う事です。






同じテーマ「ExcelマクロVBA入門」の記事

第12回.変数とデータ型(Dim)
第13回.定数と型宣言文字(Const)
第14回.文字の結合と継続行(&アンパサンド)
第14回.四則演算と注釈
第16回.繰り返し処理(For Next)
第17回.繰り返し処理(Do Loop)
第18回.最終行の取得(End,Rows.Count)

新着記事 ・・・新着記事一覧を見る

Rangeの使い方:最終行まで選択を例に|ExcelマクロVBA技術解説(3月18日)
ドキュメントの作成者を取得(GetObject,BuiltinDocumentProperties)|ExcelマクロVBA技術解説(3月18日)
Excelの表をPowerPointへ図として貼り付け|ExcelマクロVBAサンプル集(3月29日)
文字列としてのプロシージャー名を起動する方法(Run,OnTime)|ExcelマクロVBA技術解説(3月18日)
クリップボードを使わないセルのCopy|ExcelマクロVBA技術解説(3月17日)
エクセルVBAあるある|エクセル雑感(2月21日)
オートフィルタ(AutoFilter)の使い方まとめ|ExcelマクロVBA技術解説(1月28日)
Excel2013におけるScreenUpdatingの問題点|ExcelマクロVBA技術解説(1月23日)

アクセスランキング ・・・ ランキング一覧を見る

1.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技
2.ひらがな⇔カタカナの変換|エクセル基本操作
3.CSVの読み込み方法|ExcelマクロVBAサンプル集
4.セルの参照範囲を可変にする(OFFSET,COUNTA,MATCH)|エクセル関数超技
5.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
6.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|ExcelマクロVBA技術解説
7.複数条件で検索し、複数データを取得する方法|エクセル関数超技
8.CSVの出力(書き出し)方法|ExcelマクロVBAサンプル集
9.マクロVBAの高速化・速度対策の具体的手順と検証|ExcelマクロVBA技術解説
10.セルの個数を数える関数|エクセル関数超技



  • >
  • >
  • >
  • RangeとCellsの使い方

  • このサイトがお役に立ちましたら「いいね」「Bookmark」をお願いいたします。
    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、こちらからお知らせいただけると幸いです。

    ↑ PAGE TOP