【ExcelVBA】VBAで改行するための 方法を徹底解説!





こんにちは、VBAマスターのシロ(@siro3460)です。

皆さんは、VBAで改行する方法を知っていますか?

・セルに書き込む値
・メッセージボックスのメッセージ内容

など、文字列を改行したい場合はありますよね。

そこで今回は、VBAで改行する方法について徹底的に解説します!

改行の種類とは

改行には、大きく分けて2パターンあります。

  • VBAを読みやすくするためにコード自体を改行する場合
  • 書き込む文字列、表示する文字列を改行する場合

この2パターンです。

Siro
VBAのコードの改行・・・? 書き込む文字列・・・?

とぱっとよくわからないかもしれないので、それぞれ詳しく解説しますね。

VBAのコードを改行する方法

まずは、VBAのコードを改行する場合について説明します。

改行する方法を説明する前に、まず次のコードを見てください。

Sub Sample()

  'A1セルに値を書き込む
  ActiveSheet.Range("A2").Value = "私の名前はシロです。" & "エンジニア兼ライターとして活動しています。" & "お気軽にTwitterでからんでくださいね。"

End Sub

きっと、横に長すぎて読むのが大変だったのではないでしょうか。

このように、無駄に横に長いコードだと読みづらくなってしまい、作業効率が落ちたりミスが多くなってしまいます。

次のように改行することで、見やすくすることができます。

Sub Sample()

  'A1セルに値を書き込む
  ActiveSheet.Range("A2").Value = "私の名前はシロです。" & _
                                  "エンジニア兼ライターとして活動しています。" & _
                                  "お気軽にTwitterでからんでくださいね。"

End Sub

文字の開始位置が縦に揃っているので、見やすいですよね。

このように、文字と文字の間にアンダーバー(_)を入れることで、VBAのコードを改行することができます。

VBAを書いていて長くなってきたなーと思ったときは、改行して見やすくするように意識するのがおすすめです。

自分が前に書いたコードを読んでるのに、読むのに時間がめちゃくちゃかかってしまった・・・」とならないためにも、ちょっと気を付けてみるといいかもしれませんね。

文字列を改行する方法

次に、文字列を改行する方法についてです。

具体的には、次のように文字を改行するための方法です。

セルに値を書き込む場合と、メッセージの表示内容を改行する場合で書き方が異なるため、それぞれ説明します。

セルに書き込む値を改行する方法

まずは、セルに書き込む値を改行する方法について説明します。

vbLf」を文字の間に入れることで、改行することができます。

言葉だけではわかりづらいので、VBAコードと実行結果のサンプルを用意しました。

Sub Sample()

  'A1セルに値を書き込む
  ActiveSheet.Range("A2").Value = "私の名前はシロです。" & vbLf & _ 
                                  "エンジニア兼ライターとして活動しています。" & vbLf & _
                                  "お気軽にTwitterでからんでくださいね。"

End Sub

& vbLf &」を間に入れることにより、vbLfの前の文字と、後の文字を改行することができます。

メッセージボックスを改行する方法

次に、メッセージボックスのメッセージを改行する方法について説明します。

メッセージボックスの表示内容を改行する場合は、「vbCrLf」を文字の間に入れます。

こちらも、VBAコードと実行結果のサンプルを用意しました。

Sub MessageTest()

  MsgBox "新規登録が完了しました。" & vbCrLf & _
         "登録したデータは【データ一覧シート】から確認することができます。"

End Sub

セルの場合は「vbLf」、メッセージの場合は「vbCrLf」と覚えればOKです。

忘れてしまった場合は、「vb」と入力した後にCtrl + Spaceを入力すると候補がでてくるので、合わせて使ってみてくださいね!

補足
補足ですが、メッセージボックスは次のようにいくつかの種類があります。

アイコンの種類が変わるだけなのですが、視覚的に何が起こったのか伝わりやすくなるので覚えておくと便利です。

MsgBox “メッセージ内容” , 表示タイプ」のように、カンマの後に表示タイプを指定することで、変更することができます。

表示タイプはそれぞれ以下の通りです。

  • 情報 :vbInfomation
  • 警告 :vbExclamation
  • エラー:vbCritical

合わせて覚えておくと、メッセージを使う幅が広がるのでおすすめです!

まとめ

今回は、VBAで改行する方法について解説しました。

どれもすぐに使える方法なので、この記事を読みながら実践で使って覚えていくといいと思います。

特に、アンダーバー(_)を使ってVBAのコードを改行する方法は見やすさに直結するので、ぜひ使ってみてくださいね!

Siro
自分が書いたコードを直すのは自分の可能性が高い。
でも、数週間、数か月前のコードはほぼ忘れていることが多いです。
読みやすく書いていれば、苦労も減ると思うのでぜひ使ってみてくださいー!!


The following two tabs change content below.

Siro

ネコ好きフリーランスエンジニア。
開発、技術、働き方、ツールなどについて発信しています。
楽しく、開発しようぜ!