Excel VBA(マクロ)で何かツールを作るときは
その目的を達成するためには、どういうコードにすれば良いか考えます。
自分の考えとして Excel VBA でプログラミングするときに発想を出すためには
If 文、For 文、Select Case 文をどう使うか?
が大切だと考えています。
これらの意味と使い方を理解することでコードの大枠と流れを考えれるようになれます。
1、思考に関わる If 文、For 文、Select Case 文
If 文、For 文、Select Case 文は、日本語に置き換えて理解しておくべきでしょう。
If 文
If 文は
もし◯◯の場合××する
という意味をコードに置き換えたものです。
これを使って場合分けをすることができます。
セルA1 が1の場合は、セルB1 に2と出力する
という具合にです。
おそらく Excel VBA でツールを作るときに一番登場頻度が高い構文だと思います。
VBA での使い方についてはこちらの記事を参考にして下さい ↓
Excel でよく使う関数の1つに IF 関数があります。そして、VBA でも同様に IF文(IF ステートメント)というものがあります。この両者を使えば同じ計算をすることができ、VBA を新たに学習し始めた方にとっては関数と照らし合わせながら学習すると効果的です。今日は、Excel の IF 関数と VBA の IF 文について説明します。1、条件が1つの場合の IF 関数、IF 文の使い方Excel 関数でも VBA でも IF を使う場合には、条件に当てはまるか否かで行う処理が分かれます。Excel の IF 関数の使い方IF 関数は次のように記述します。=IF(条件,... Excel の IF 関数と VBA の IF 文(IF ステートメント)の使い方 - My タックスノロジー |
日常生活でもこの If 文と同じように思考してますよね?
明日雨が降ったら、傘を持って出勤する
という感じにです。
このように日常生活でも頻繁に使う思考を、VBA でも If 文という形で頻繁に使います。
For 文
For 文は繰り返しに使います。
i が 1から10 になるまで同じ処理を繰り返す
という様に使います。
例えば、
セルA1~A10 まで1つずつ数字を増やして表示させる
という具合にです。
VBA での使い方についてはこちらの記事を参考にして下さい ↓
はじめてプログラミングを勉強している方が挫折しやすいのが、繰り返し(ループ)処理です。同じことを何回も繰り返すというのはプログラミング独特の概念なので、最初はなかなか分かりません。慣れるのにはある程度時間がかかります。(私はかかりました。)さて、今日は Excel VBA(マクロ)での繰り返し処理の入門編ということで、For 文の使い方をじっくり解説します!VBA 習いたての人が繰り返し処理で挫折してしまったらもったいないと思うんですよね。。Excel VBA は経理などの事務職では使えるツールなので、「繰り返し処理の... Excel VBA(マクロ)繰り返し処理入門、For 文の使い方 - My タックスノロジー |
これも日常生活で同じ様な考え方しますよね。
資料1 から 10 まで1枚ずつ印鑑を押していく
という具合に繰り返し作業を行うときの思考です。
繰り返し処理はプログラミングが、最も得意とするところです。
Select Case 文
Select Case 文は、複数の場合分けに使います。
・もし◯◯の場合は××する
・もし●●の場合は※※する
・それ以外の場合は◇◇する
と様々なケースごとにやることを変えることになります。
これをコードに置き換えたものです。
セルA1 が
・1の場合は、セルB1 に2と表示する
・2の場合は、セルB1 に3と表示する
・上記以外の場合は、セルB1 に4と表示する
という具合にです。
日常生活でもこの Select Case 文と同じように思考してますよね?
明日の天気が
・晴れだったら手ぶらで行く
・雨だったら傘をさして行く
・それ以外の場合(曇りの場合)は折りたたみ傘をカバンに入れていく
という感じにです。
2、場合分け、繰り返しで発想をする
プログラミングするときに
●If 文、Select Case 文 による場合分けをどのように行うか?
●For 文による繰り返し処理をどのように行うか?
を意識するとやりやすくなります。
言い方を変えれば、プログラミングしているときに
この部分を作るのに If 文、Select Case 文、For 文のどれかを使って何とかならないかな?
と意識すると良いかと思います。
3、まとめ
Excel VBA でプログラミングするときには
If 文、For 文、Select Case 文をどう使うか?
意識すると良いと思います。
これらの構文は、プログラミングの発想をする上でとても重要ですので、しっかりとおさえるようにしておきましょう!
編集後記
昨日(3/28)は確定申告の資料返却のために終日西伊豆方面へ出張。
仕事の後には久しぶりにマッサージに行ってきました。
あと、最近ミニサイト作りをしています。
ミニサイトというのは、テーマを絞って少ない記事数で完結させるサイトのことです。
またどこかで記事にできればと思います。