[VBA]ソースコードを改行する方法

2020年3月14日

VBAのプログラムをコーディングしているとソースコードが長い行になってしまうことがあります。特に、配列の宣言を行う時やメッセージボックスやインプットボックスのコードを記入するときに長くなりがちです。

長いままのコードでは右にスクロールを行わないと全容の確認ができなくなってしまいます。コードの確認時にいちいちスクロールを行うことになり作業効率が悪くなってしまいます
作業効率を上げるためにはコードを複数行に分けるスキルは必要不可欠です

この記事ではVBAのコードを複数行に分ける方法を学びます。
VBAのコードを複数行に分けることでスマートかつ読みやすいプログラムの作成を目指しましょう!!

複数行への分け方

コードを複数行へ分ける方法を分けていない場合と比較しながら確認していきます。

分けない場合

コードを複数行に分けずに記載した例です。「本日は晴天なり明日もいい天気になればいいな」という文字をそれぞれ改行して記入したものになります。

このように改行が多い文字を記入すると文字列が多くなってしまう傾向にあります。

Sub 行を分けない()

'行を分けずに入力する
Debug.Print " 本日は" & vbCr & " 晴天なり" & vbCr & " 明日も" & vbCr & " いい天気に" & vbCr & " なれば良いな"

End Sub

分けた場合

コードを複数行に分けて入力した例です。分けなかった場合と同じ出力結果のコードです。

Sub 行を分ける()

'&の前で改行する
Debug.Print " 本日は" & vbCr & " 晴天なり" & vbCr & " 明日も" _
 & vbCr & " いい天気に" & vbCr & " なれば良いな"

'&の後で改行する
Debug.Print " 本日は" & vbCr & " 晴天なり" & vbCr & _
 " 明日も" & vbCr & " いい天気に" & vbCr & " なれば良いな"

'コメントアウトの改行も _
同じ方法で可能です

End Sub

注目すべき点は改行する行の最後に半角スペースアンダーバーがついているところです。

改行する文字列[ (半角スペース)][_(アンダーバー)]
次につながる文字列

上記記入方法を行うとエディタ上で改行をしていてもプログラム上では一行として認識されます。よってコードが読みやすいプログラムの作成が可能になります。
なお、関数の途中文字列の途中で改行が行えないので注意が必要です。

まとめ

  • 一行が長いプログラムを書くと可読性が低くなるため複数行に分ける
  • 複数行への分け方は行末に [ (半角スペース)][_(アンダーバー)]
  • 関数や文字列の途中では改行が行えないので注意が必要

本日の戯言

今日はソースコードの改行についての記事を記載しました。
改行を行うことはあまりないと思いますが知っていると幸せになれる題目だと思います。
自分は他者のプログラムを見た時に改行があることを初めて知りました。そのプログラムはSQLのコードだったのですが当時のSQLも知らない自分には解読不能でした😅
何がSQLでアンダーバーもついているし意味わからん!という状況になったのは懐かしい思い出です。
解読不能なコードに陥る人が少しでも減れば良いなーー。

ではでは