top of page

Excel VBAの可読性を高めるために(概要編)

はじめに

 Excel VBAに限らず、プログラミングにおいて可読性の高いコードを書くことは非常に重要です。プログラムを動かすのは機械ですが、そのコードを読むのは人間です。そして、コードを修正したり変更したりするのも人間であるため、人間が読みやすいように書かれたコードであることが基本原理です。


 ただ、機械が動けばいいと考えで構築されたコードは、人間が読むことを意識していないため、保守性や再利用性に悪影響を与えるデメリットが生まれることがあります。


 今回の記事の続編の「具体例編」は次の記事で解説していますので、こちらも参照してみてください。

ree

可読性が高いコードのメリット

可読性は、コードを読んだ人間がすぐに内容を理解できる度合を指します。これは、次のような多くの利点を生む基盤となる要素です。


1. 保守性

 可読性が高いコードは、仕様変更やバグ修正が容易です。例えば、開発者が変わったとしても、コード内容を理解しやすく、どの部分を修正する必要があるのか、またどの部分を新たに書き出すべきなのかを人間がすぐに確認したり気づいたりできるため、無駄な手間が減少します。


2. 再利用性

 コードが読みやすいことで、別のプロジェクトでも活用しやすくなります。例えば、実際に書かれたコードの一部分をコピーして、別のマクロや新しいプロジェクトで流用することが容易になります。このようなコードは、いわゆる部品としての役割を果たします。特に、汎用的な関数やプロシージャとして構築された部品は、さまざまな場面で再利用しやすいだけでなく、他の開発者にも共有しやすい資産として残すことができます。汎用プロシージャをしっかりと可読性の高い形で構築しておくことで、後々の流用が簡単になるため、非常に使いやすい資産として活用できます。


可読性を高めるための主要な注意点

可読性を高めるためには、下記の注意点を心がけることが必要です。


1. コードを短く書きすぎない

よくある教科書的な説明では、コードを1行にまとめて簡潔に記述する方法が推奨されがちです。しかし、このようなコードは、動作は正しいものの、内容を理解するのに時間がかかりがちで、処理内容が明確ではありません。


よくある例:


 このコードは簡潔ですが、処理内容が一目では分かりにくく、後からコードを見直す際に詳細を確認する手間が発生することがあります。特にこのような記述は、エクセルVBAの教科書や書籍などで「丸暗記してください」と教えられることが多いものの、可読性の観点では誤った例と言えます。可読性を無視して動作だけを優先したコードは、結果的に保守性や理解のしやすさを損ない、長期的な視点ではデメリットが大きいです。


分かりやすい例:


 このコードでは、各処理がコメント付きで明確に記述されており、どのような手順で最終行を取得しているのかが分かりやすくなっています。また、処理内容を分割して書くことで、後から見た人が「どこを修正すればいいか」「どういう目的のコードか」を簡単に理解することができます。

 特に中級者以上のプログラマーは、短いコードが簡潔で、プロっぽいと思いがちですが、読み手にとって理解しにくくなることが多くあります。それよりも、正確で明瞭なコードを実現することを目指しましょう。


2. 別の人のコードを参考にする

 自分のコードが完璧ではないという意識を持ち、さまざまな人のコードを学ぶことが重要です。その参考として、書籍や上級者の投稿、ブログやネット上に公開されている記事などを活用することが効果的です。良い部分を吸収し、それを自分のコードに反映させることで、より優れたプログラムを構築することができます。


3. 自分の過去のコードを見直す

 過去に自分が書いたコードを、記憶がないような状態で見直した際に、ここは読みづらいなと感じた点を振り返り、その反省点を元に改善を繰り返すことが重要です。

次回の記事では、具体的なコード例や改善方法について詳しく解説します。

コメント

5つ星のうち0と評価されています。
まだ評価がありません

評価を追加

​タグ一覧

配列処理(44)

階層化フォーム(33)

ファイル操作(22)

シート・セル操作(11)

コード自動生成(10)

ユーザーフォーム(8)

図形操作(7)

GAS(5)

技術解説(4)

副業(4)

考え方(4)

介護(4)

条件付き書式(4)

イミディエイトウィンドウ(3)

Enum(3)

Googleスプレッドシート(3)

ココナラ(3)

アニメーション(3)

クリップボード(3)

イベントプロシージャ(2)

PDF(2)

フリーランス(2)

リスキリング(2)

Excel(2)

Excel小ネタ(2)

数学(2)

Outlook(2)

文字列操作(2)

小説(2)

HTML(2)

JavaScript(2)

日報(2)

シフト(2)

カレンダー(2)

ショートカット(2)

パズル(2)

ステータスバー(1)

開発効率化(1)

コード解析(1)

静的変数(1)

OneDrive(1)

バックアップ(1)

可変長引数配列(1)

ブック処理(1)

スクレイピング(1)

スプレッドシート(1)

coconala(1)

リボン登録マクロ(1)

QRコード(1)

実行予約(1)

給与計算(1)

VBA不使用(1)

リボン(1)

超勉強会(1)

六角形(1)

Excel遊び(1)

ボウリング(1)

時計(1)

スピログラフ(1)

図名描写(1)

連想配列(1)

イベント(1)

溶接ロボット(1)

VBA(1)

脱Excel(1)

Discord(1)

ECサイト(1)

CSV(1)

楽天(1)

保育士(1)

シフト表(1)

CDP(1)

楽天市場(1)

経理(1)

javascript(1)

医療(1)

文書作成(1)

LookerStudio(1)

セキュリティ(1)

発注書(1)

公開ツール(1)

WebAPI(1)

色操作(1)

罫線(1)

セル着色(1)

スーパー開発ショートカット(1)

ライブラリ処理(1)

Softex-Celware

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2023 softex-celware。Wix.com で作成されました。

bottom of page