オデッセイの運営サイト一覧

Excel®️、Accessのマクロ・VBAのスキルを評価する資格VBAエキスパート

企業・教育機関の皆さまへ 試験会場を探す お問い合せ

やってみよう!Excel VBAで業務改善!|VBAとの出会い編

第28話「プロシージャを呼び出すメリットとは?」

第28話「プロシージャを呼び出すメリットとは?」

登場人物紹介

処理の結果は同じだけど…

「どちらも食事をして満腹になるという、処理の結果は同じだ。
でもうどん屋…つまりSubプロシージャの場合、呼び出したプロシージャの先で処理が完結してしまう。
つまり、うどん屋でうどんを食べるということで、食事をするという処理は完結だ。
これに対して宅配ピザ…つまりFunctionプロシージャの場合、呼び出したプロシージャの先で処理は完結しない。
つまり、宅配ピザ屋がデリバリーしてくれたピザを、自宅…つまり呼び出し元のプロシージャで食べることによって、食事をするという処理が完結する…。
図にするとこんな感じだよ。」

「…なるほど、これはわかりやすいね。
要するに、呼び出し先で処理が完結してしまうときはSubプロシージャを、
そうではなく呼出先の処理の結果を利用したいときはFunctionプロシージャを使えばいい…、
ということかい?」

八木くんがニヤリとします。

「だいぶん、わかってきたじゃないか星。
ここで重要なのは…うどん屋に行くにしろ、宅配ピザをとるにしろ、それぞれの処理の内容は、毎回変わらないということだ。
変わるのは、注文する料理の内容と支払う代金くらいだ。
まさか毎回、きつねうどんとアンチョビピザばかり、たのむわけにはいかないだろう?」

「…俺、アンチョビは苦手なんだけど…」

星くんが、顔をしかめます。

「すまん、それは俺の好物だ」

八木くんが、ポリポリと頭をかきます。

「な~るほどなあ…。
確かに同じ処理を、毎回コードで記述するのはナンセンスだよね。
別のプロシージャにわけて、呼び出すようにすればコードがぐっと短くなるよね」

シーズン1 「VBAとの出会い」編:エピソード一覧

一覧へ戻る

MENU