変数定義の概要 ~VBAの基礎~

前回の記事において、オブジェクトを指定する基本であるセルの指定方法について整理しました。しかし、行や列を指定してコードを書いていくことにはリスクがあります。

本稿においては、プログラミング全般で基礎となる変数の考え方と、Excel VBAにおける記載方法を整理します。

変数の必要性

例えば、A2セルのフォントサイズを12ポイントにし、B2セルのフォント名を「MS Pゴシック」にしたい場合、以下のようにコードを記載します。

しかしながら、1行目に行が追加されてしまった場合については、記載されている2行とも行番号を変更する必要が出てきてしまいます。本例においては、そこまでの手間にはなりませんが、コードが長く複雑になってくると、修正が煩雑になります。そこで、「変数」という考え方が必要になってきます。

変数の概要

変数の考え方

別で管理したい「数字」や「文字列」、「HTMLファイル」等を格納する箱を用意し、その箱の中にデータを入れて活用することで、変更がある際にも箱の中のデータを一か所変えるだけで済むようになります。イメージ的には、この箱のことを変数と呼びます。
(下に画像入れるとわかりやすい)

変数の定義 (基本構文・データ型)

変数を用いる前には、事前にどのような変数が存在するかを事前にプログラム上で記載する必要がありますが、以下のコードで定義することが可能です。

  • Dim (変数名) as (データ型)

変数定義とは、「データを入れる前に箱を作る作業」と考えると、イメージしやすいと思います。

変数名は、自分で好きな名前にすることができます。短いコードであれば、「x」等の簡単なアルファベットでいい場合もありますが、長くなると後から見返したときに何の変数か分かりづらくなるため、意味がある変数には、意味が分かるような変数名を用いることが望ましいです。
(例) lastRow、rowNumber

少し厄介なのがデータ型です。VBAのプログラムにおいては、どのようなデータが入るのかを宣言する必要があります。 (プログラミング言語によっては、型を推定してくれるものも存在します。)
よく用いるデータ型と、コード上の記載方法について以下にて備忘します。

活用例(データ型) 内での記載方法
特定の文字を格納したいString
特定の数字を格納したいLong
特定のシートを指定したいWorkSheet
HTMLファイル等を格納したいObject

スクレイピングやクローリング等、少し複雑な処理を実施したい場合におけるデータ型は、その時々でサンプルコードとともに調べる方が効率がいいため、最初は「文字ならString、数字ならLong」ということだけ覚えておけば十分かと思います。

データの格納方法

上記までで箱を作ることはできましたが、それだけで利用することはできません。箱を作った後は、その箱の中にデータを格納する必要があります。Long型の変数iに3という数字を格納したい場合は、以下のように記載します。

  • i = 3

一旦格納した値は、上記と同様の方法で更新することも可能です。

書き換え例

上記までの内容を踏まえて、A2セルのフォントサイズを12ポイントにし、B2セルのフォント名を「MS Pゴシック」にしたい場合に、変数を用いると、このようになります。

最後に

本稿においては、プログラミングで必須ともいえる変数について整理しました。繰り返し処理や条件分岐と組み合わせることで、一層変数は便利に活用することができるため、是非活用できるようになってくださいね。

※ 繰り返し処理に関する記事はこちら。
※ 条件分岐に関する記事はこちら。