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



第11回.RangeとCellsの使い方


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


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


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


Rangeを使うのは、


・固定位置のセルの場合

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

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


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


Range("A" & i)


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

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

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


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


見苦しいというのはともかくとして、実行速度も遅くなりますし、

Cellsがあるのですから、これを使うようにしましょう。


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


Cells(行, 列)


のように書いて下さい。

列は、数字だけでなく、列記号も使えます。

Cells(5, 3)
Cells(5, "C")

どちらで書いても同じC5セルになります。


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


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)

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

遅い文字列結合を最速処理する方法について|ExcelマクロVBA技術解説(8月29日)
大量データにおける処理方法の速度王決定戦|ExcelマクロVBA技術解説(8月14日)
条件付きコンパイル(32ビット64ビットの互換性)|ExcelマクロVBA技術解説(8月12日)
Dictionary(ディクショナリー)のパフォーマンスについて|ExcelマクロVBA技術解説(8月12日)
オブジェクトの探索方法|ExcelマクロVBA技術解説(8月7日)
ローカルウィンドウの使い方|ExcelマクロVBA技術解説(8月7日)
プログラミングとは|エクセル雑感(7月21日)
よくあるVBA実行時エラーの解説と対応|ExcelマクロVBA技術解説(7月2日)
Excelのリンクの管理について|エクセル雑感(5月27日)
offset 検索ワードで非常に多いので「offsetまとめ」|エクセル雑感(3月26日)

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

1.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
2.RangeとCellsの使い方|ExcelマクロVBA入門
3.Range以外の指定方法(Cells,Rows,Columns)|ExcelマクロVBA入門
4.徹底解説(VLOOKUP,MATCH,INDEX,OFFSET)|エクセル関数超技
5.CSVの読み込み方法|ExcelマクロVBAサンプル集
6.セル・行・列の削除・挿入(Delete,Insert)|ExcelマクロVBA入門
7.セルの参照範囲を可変にする(OFFSET,COUNTA,MATCH)|エクセル関数超技
8.セルのコピー&値の貼り付け(PasteSpecial)|ExcelマクロVBA入門
9.ひらがな⇔カタカナの変換|エクセル基本操作
10.VBAのFindメソッドの使い方には注意が必要です|ExcelマクロVBA技術解説



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

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

    ↑ PAGE TOP