初心者のためのExcelマクロ超入門(絶対できるVBA開発)

マクロがまったくわからない人のためにエクセルマクロやVBAについてできるだけわかりやすく書いています。Twitter:@shuhhohhey

初心者のためのExcel エクセルマクロVBA入門-配列について

f:id:drumer2sh:20130919161306p:plain

マンションに入ってみないか?


今日から配列でございます。初心者の皆さんが変数を学ぶ上での最初の関門ですなぁ・・・変数というのは以前にもその性質をお話しましたが、基本的には1つの値しか入れることはできません。strAisatu変数に「おはよう」が入っていたら、次に・・・

strAisatu = "こんにちは"

とすると、最初に入っていた「おはよう」は消えて「こんにちは」が入るわけですね。では、おはようとこんにちは、そしてこんばんはまでをstrAisatuに入れたい場合はどうしたらいいでしょうか?それが配列です。配列は同じ名前の変数に番号を付けることで、複数の値を入れて管理できるようになります。ちょうど、マンションやアパートのように。。。

配列の作り方


基本的に変数と同じです。Dimステートメントを使います。これも変数と同じで配列も必ず、事前に宣言するようにしましょう。普通の変数と違うのは、何号室まで作るのか?ということだけです。

' 挨拶変数を3つ宣言する
strAisatu(2) As String


これで3つ作ったことになります。「2」と書いてありますが、間違いなく3つあります。それは、

配列は0から始まる。


これがルールです。配列は0が最初に来ます。ですので3つ作ろうとして、strAisatu(3)とすると、


strAisatu(0)
strAisatu(1)
strAisatu(2)
strAisatu(3)

と、変数を4つ用意したことになってしまいます。これはとても大切なのでしっかりと覚えてください。なぜなら、セルは1行、1列目から始まるからです。最初のうちどころか、マクロを組めるプログラミングの達人でさえ、たまにこのインデックスの間違いをよくおこします。わかっていても間違えるので、しっかりと覚えて意識しておくことです。

で?何が便利なわけ?配列って。


同じ変数を使うのだから、混乱したりしないのか?など、言われそうですが、逆です。配列を使うからこそすっきりとできるのです。先ほどの例でもわかりますが、同じ「挨拶」を朝昼夜で、全部分けて変数に入れたら、それこそ管理が大変です。それよりも挨拶マンションに入れて0号室に朝、1号室に昼、2号室に夜というだけで非常にすっきりと管理できるのです。

まずは、これだけ。

配列は番号を付けて管理できる変数


ということをまずは、理解しておきましょう。



今日はここまで!

かしこ