【Excel VBA】プログラムコードの構成について

皆さんこんにちは

Pycelです

 

今回のテーマ

今回のテーマはVBAの構成」についてです。

VBA初心者の方は特にそうですが、VBAの全体像を想像できていない方が多いように感じます。

どこでどんな動きをしてほしいのかがイメージできていないと、想定していた動きにならない!といった事態になりかねません。

全体像をイメージしながらコードをかけるようになりましょう。

 

プログラムを作成する際に意識する事

VBAに限らずプログラムを作成する際に意識するべきポイントはいくつかあります。

その中でも、「大枠→中身」を意識する事がとても重要です。

 

そもそもプログラムってどんな事するもの?

そもそもプログラムを作成する目的が何か考えたことはありますか?

プログラムは、人間が行う作業をPC側に処理させるために作成します。

つまり、人間が行う作業のうち、誰ががやっても同じ結果になる作業に関しては

PCに処理させた方が速いので、やり方の手順書(マニュアル)を作ってあげるわけです。

 

プログラムを作るときの2つのピース

プログラムを作成するときによく使う構文が2つあります。

「繰り返し処理」と「条件分岐処理」です。

これらは、各プログラミング言語ごとに使用する構文が違います。

しかし、細かい違いはあるものの、どの言語でもこの2種類の処理方法を抑えておけば

ほとんどのプログラムの作成が可能です。

あとは、この2つの処理をどのように組み合わせていくか、を考えていくだけです。

ピースの組み合わせ

プログラムの大枠は、繰り返し処理で作成します。

先ほども書きましたが、プログラム自体がある作業をPCに代行させることを目的に作成するものです。

つまり、基本的には繰り返し処理だけさせてあげればよいわけです。

あとは、ひとつの作業だけ代行させているとどうしても例外的な作業が発生してしまします。

そういった作業が見込まれる場合に条件分岐処理を行うわけです。

↓イメージとしてはこんな感じです。

f:id:pycel_master:20210905180033p:plain

オレンジの枠の中に条件分岐処理を書くことで、繰り返し処理の中で例外的な処理をさせることが可能になります。

画像の様に大枠として繰り返し処理を作り、その中に条件分岐処理などをあてはめていくことで

自然とコードを書いていくことができるようになります。

最後に

VBAの構成は、複雑なコードになればなるほど重要な考え方になります。

どこでどんな処理をさせるのか、指示を出す側がイメージしていないとPCも思った通りの処理をしてくれません。

VBAについても構成を考えながらコードを書けるようになりましょう。