OutLookの本文を改行したい(改)【VBA】

目次

使用環境

  • OS:Windows 10 Pro(バージョン:20H2)
  • ソフト:Microsoft Excel VBA、Outlook

経緯

以前、VBAを使ってOutlookメールを作成する際、
本文に改行を入れるために**「& vbCrLf」**を何度も書いていましたが、
コードが非常に読みづらく、美しくありませんでした。

そこで今回は、よりすっきりとした記述方法について学びました。

解決方法:For文を使って本文を構築する

本文に複数行を挿入する場合、For文でループさせながら本文を組み立てると、
非常にきれいにまとめることができます。


コード例(D5~D62セルの内容を本文に改行付きで追加)

Dim i As Long

For i = 5 To 62
    objMail.Body = objMail.Body & Range("D" & i).Value & Chr(10)
Next i

コード解説

  • 1行目:カウンター変数iをLong型で宣言します。
  • 3行目:5行目から62行目まで、D列のセルを順番に読み込みます。
  • 4行目
    • Range("D" & i).Valueで、対象のセルの値を取得します。
    • Chr(10)で改行コード(LF:Line Feed)を挿入します。
    • 既存の本文(objMail.Body)に、セルの内容と改行を順次追加していきます。

ポイントまとめ

  • Chr(10)は改行を表すコード(LF)で、Outlookの本文でも問題なく機能します。
  • 本文に直接「& vbCrLf &」を連続で書くより、For文を使ったほうがスッキリし、メンテナンス性も向上します。
  • セル範囲を変えるだけで、読み込む本文内容を簡単に変更できる柔軟性もあります。

まとめ

Outlookのメール本文をきれいに改行しながら作成したい場合は、

  • For文でセルの内容を順番に読み込む
  • Chr(10)を使って改行を入れる

この方法を使うことで、
「読みやすく、拡張しやすい」コードを書くことができます。

メール自動化の品質も向上しますので、ぜひ活用していきたいと思います。

ここまでお読みいただき、誠にありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

私が勉強したこと、実践したこと、してることを書いているブログです。
主に資産運用について書いていたのですが、
最近はプログラミングに興味があるので、今はそればっかりです。

目次