お疲れ様です。
出張から帰ってきてからはひたすらドキュメント作成をしております。
先日現場上長からVBA覚えてくれ〜!と言われたので勉強し始めました。
前々回投稿した手順書作成の際に、助けていただいた、VBA仙人ことシニアマネージャーが「俺がVBA職人してやろう!!」と張り切ってくださり、仙人主催のVBA塾に参加させていただいてます。
そこでVBAに限らずプログラミングは料理だよと教わったので、プログラミングの基本用語をを料理に例えて整理したいと思います。初学者向けにまとめたので、知ってる方は物足りないと思いますのでサラッと読んでいただけると嬉しいです。
1. 変数
変数は、料理における「材料を入れる器」や「ボウル」です。
- 例: 大きなボウルを用意し、ここに様々な材料を入れていきます。このボウルの名前を「サラダボウル」とすると、後でどの材料がどのボウルに入っているかを管理しやすくなります。材料の入れ物なので、その中身が変わる事があります。日によって盛り付ける食材が違うようなものです。VBAでは、変数を使用することで、一時的にデータを保存します。
2. 定数
定数は「決まった量の特別な材料」や「固定の調味料」で料理のベースとなる基本的な材料のことです。
- 例: レシピに「砂糖は必ず小さじ2」と決まっている場合、この砂糖の量は変わらないので、定数として扱います。VBAでは、定数を使用することで、プログラム内で変更されない値を定義できます。
3. 値
値は料理の「個々の食材や調味料」です。
- 例: トマト、きゅうり、塩、油など、これらが具体的な値です。VBAでも、数値や文字列など、実際に使うデータが値として扱われます。
4. パラメータ
パラメータはレシピにおける「材料の量」や「料理の条件」です。
- 例: サラダのレシピに「このレシピでは、トマトを2個使います」という具体的な量がある場合、これがパラメータです。関数に渡される情報で、特定のデータや設定を指定するための役割を果たします。
5. 関数
関数は料理の「レシピそのもの」です。
- 例: サラダを作るための手順が書かれたレシピが関数です。このレシピには、どの食材をどのように調理するかが書かれています。「煮る」「焼く」といった処理です。VBAの関数は、特定の処理をまとめたもので、何度でも呼び出して使うことができます。
6. 引数
引数は関数に渡す「具体的な材料やその量」です。
- 例: 料理のレシピで、特定のサラダを作る際に「トマトは2個」と書いてある場合、その「2個」が引数です。VBAでは関数を呼び出す際に、実際にパラメータに当たる値を渡します。
7. 戻り値
戻り値は完成した「料理そのもの」です。
- 例: サラダができあがったとき、それが戻り値です。この完成した料理を提供することで、材料や手順の結果を得ることができます。VBAでは、関数が処理を完了した際に、結果として返す値のことを指します。
全体の流れ
- 材料を選ぶ(値): トマト、きゅうり、レタスなどを用意。
-
器を選ぶ(変数): ボウルを取り、名前をつける(例:
saladBowl
)。 -
特定の材料の量を決める(定数): 砂糖は常に小さじ2と決める(例:
Const SUGAR As Double = 2
)。 - 材料の量をレシピに書く(パラメータ): サラダのレシピにトマトを2個と記載。
- 作る手順を決める(関数): サラダを作るレシピが関数。
-
実際に材料を渡す(引数): 関数を呼び出して、
MakeSalad(2, 1)
のようにトマトときゅうりを指定。 - できあがったサラダ(戻り値): 関数がサラダを作り、その結果を返す。
まとめ
これらの用語は、プログラミング全般で共通して使われる基本的な概念ですので、VBAだけでなく、他の言語を学ぶ際にも同じように理解することが出来ると思います。
プログラミングは料理と同じで、材料(変数や値)を組み合わせて、特定の手順(関数)を通じて、最終的な料理(戻り値)を作り出すプロセスだと教わりました。
最近実際の料理を始めたのですが、レシピの分量(定数)を無視しがちです。。(私の料理は常に変数なので柔軟性が高いと思いたい)
今のところ得意料理はリクガメの餌のようなサラダなので、レシピ(関数)をたくさん覚えたいです。
ここまで読んでくださりありがとうございました!