ステートメント構文など
vbCrLf
VBAを使ってエクセル上で、もしくはフォームやメッセージボックスなどで改行する方法です。
エクセル上だとセルの編集中に[Alt+Enter]と同じ動作を再現します。
サンプルコード
Sub kaigyo() Cells(1, 1) = "かいぎょう" & vbCrLf & "テスト1" Cells(1, 2) = "かいぎょう" & vbLf & "テスト2" Cells(1, 3) = "かいぎょう" & vbCr & "テスト3" Cells(1, 4) = "かいぎょう" & Chr(10) & "テスト4" Cells(1, 5) = "かいぎょう" & Chr(13) & "テスト5" Cells(1, 6) = "かいぎょう" & vbNewLine & "テスト6" Debug.Print "かいぎょう" & vbCrLf & "テスト1" Debug.Print "かいぎょう" & vbLf & "テスト2" Debug.Print "かいぎょう" & vbCr & "テスト3" Debug.Print "かいぎょう" & Chr(10) & "テスト4" Debug.Print "かいぎょう" & Chr(13) & "テスト5" Debug.Print "かいぎょう" & vbNewLine & "テスト6" End Sub
実行結果イメージ
解説
vbLf(定義済みの定数)
Chr(10)(実際の値)
この二つは「ラインフィード」の略で原則的には1行下に移る動作をします。vbCr(定義済みの定数)
Chr(13)(実際の値)
この二つは「キャリッジ・リターン」の略で原則的にカーソルなどを同一行の先頭位置に移動します。ラインフィードとキャリッジ・リターンを合わせて
vbCrLf (定義済みの定数)
Chr(13)&(Chr(10)実際の値)
で改行を表すのが通常っぽいですがVBA上であれば
vbNewLine (定義済みの定数)
で思うような動作が得られると思います。