Office Hack

Excelの改行をVBAで指定する方法

  • by yoshihiro
  • Release

VBAでセル内の文字列を改行して出力する方法をご紹介します。Excelではセル内で「Alt + Enter」を押すと、改行コードvbLfが入力されます。VBAからセルに改行した文字列を入力するにはvbLfを使用します。

動作するサンプルコード付きなのでVBAに詳しくない方でも動作させることができます。

VBAで定義されている改行コード

VBAでは用途に応じて使用できる改行コードが決まっています。セル内改行では「vbLf」を使用しますが、MsgBox内の改行は「vbCrLf」を使用しますのでご注意ください。

定数
vbCr Chr(13)
vbLf Chr(10)
vbCrLf Chr(13) + Chr(10)

Visual Basic Editorの起動

VBEの起動

まず【開発】タブを選択し、続いて【Visual Basic】を選択します。

VBEの表示

Visual Basic Editorが起動します。左上のプロジェクト内の【Sheet1(Sheet1)】をダブルクリックします。

コードの入力

VBAコードの入力

コード入力欄に下記のサンプルコードをコピー&ペーストしましょう。次に【▶】ボタンを押します。

Sub Sample()

    Dim i As String

    i = "Excel" & vbLf & "1行目"
    Range("A1").Value = i

End Sub

コードの説明をします。

3行目:変数「i」に「Excel」と「1行目」という文字列を代入します。「Excel」と「1行目」を連結する際、改行コードを表す「vbLf」を記述します。

4行目:A1セルに変数「i」を出力します。

実行結果

実行結果

シートに戻るとA1セルにセル内改行した文字列が出力されました。

その他、様々な改行の編集方法