Excel-VBA プログラミング

【VBA】同構造はモジュール化(構造化プログラミング)しよう!

Excelの自動化等業務効率化に最適なVBA。プログラミングを記述する際によく利用される「モジュール化」。

 

構造化プログラミング等の表現でもよく利用されますが、いったいこれはどんなことを意味しているのか?

 

具体的なモジュール化の意味や利用の仕方について詳しく解説していきましょう。

 

モジュール化とは

モジュール化とは・・・・

使いまわしができる。再度呼び出せる」こんな言葉が適切かと思います。

著書等では、構造化プログラミング等という言葉を用いることが多いです。

 

これを一つの日本語で例えるのであれば、日本語でも同じような文章の時には、「これ」「それ」等の言葉を用いて、簡略化しますよね。

管理者

これと同じことをプログラミングでも行います要は略語のことですね。

同じ言葉を何度も使うことは日本語としても不適切です。

これはプログラミングでも同様で、決して使用できないわけではありませんが、文字数が非常に多くなってしまいます。

 

一度使用した言葉、簡略化して呼び起せるようにしてしまおう!

これが「モジュール化」または「構造化プログラミング」といいます。

 

プログラムをモジュール化するのはどんな時?その理由とは

 

悩む女性1

でも、どうしてモジュール化する必要性があるの?

 

その理由には、下記3つが挙げられます。

『モジュール化する3つの理由とは』
  • 何度も同じ文章を記述しないため
  • きれいなプログラムソースにする
  • 次の人がみてもわかりやすくするため

 

まずは、同じ記述を何度も記述しないようにすることです。文章でも一緒で、同じ文章は、「あれ」「これ」で省略しますよね。。。

何度も同じ文章があると、読み手も疲れてしまいます。なるべく、省略できるようにするために利用します。

またモジュール化できれば、あとはそれを呼び出すだけなので、きれいなプログラミングになり、新たにそれを読む方も解析しやすくなるのです。

 

 

モジュール化はどのように作るの?モジュール化の作り方

それでは実際のモジュール化の作り方について詳しく解説していこうと思います。

 

<モジュール化の手順>

  1. 仕様と全体像を把握する
  2. プログラム設計を立てる
  3. アルゴリズムやフローを作る
  4. モジュール化するところを把握する

 

 

何より大切なことは、仕様と全体像を把握して、プログラムをどのように作成するかを頭の中で組み立てることが大切です。

そのイメージが付いたら、実際に、そのフローやアルゴリズムを紙に書いてみましょう。

最初のうちは、下記の図を作ってからプログラミングを作るとよいでしょう。

 

【フロー・アルゴリズムイメージ図】

【フロー・アルゴリズムイメージ図】

モジュール化する時のアルゴリズムの組み立てです。

特に、この黄色の部分に注目して下さい。これは、処理を、Yes,Noで判断する場合、ずっとNoであれば、黄色の処理を通り、同じ処理が流れることになります。

この黄色の処理こそが、モジュール化することができ、何度も使いまわすことが可能です。

 

モジュール化する上で注意すべき大切なこととは

このモジュール化する上で2つ注意するべきことがあります。

それは・・・・

 

注意

  • きちんとモジュール化する意味を理解する
  • SubとFunctionの使い分けも合わせて理解する

 

 

管理者

この2つを理解していないと、なんでモジュール化したんだろう???って感じてしまうことも少なくありません。

 

なので、しっかりVBAの記述方法を理解した上で、モジュール化をすすめていきましょう。

 

【SubとFunctionの違いについてはこちらをご参照ください】

 

まとめ

モジュール化ができるようになるためには、ある程度プログラミング慣れが必要で、プログラムがどのように流れて、どのようにデータが移動していくのかを把握することが大切です。

これを理解しているということは、それだけ、フロー及びアルゴリズムを理解していることを意味します。

まずは、仕組みの全体像を把握し、そのデータの流れや処理の動きを把握することで、プログラムが作成しやすくなりますので、モジュール化しやすくなることを覚えながら、作ってみて下さい。

 


➡【月3万稼げる!ブログの始め方】


→当ブログをフォローして頂けると励みになります。 


楽天おすすめ商品はこちら

  • この記事を書いた人
  • 最新記事

みやさん

【サイト運営者・著者】みやさん 【実績】ライター歴7年 ブログ歴3年⇒2万PV推移中 【実務】現役プログラマー|【発信内容】▶副業やブログの始め方 ▶ライターとしてのノウハウ ▶生活の有益情報を発信しています。皆様の生活改善にご利用ください。

Copyright© 副業ケアネット , 2024 All Rights Reserved Powered by AFFINGER5.