Excel実行画面
下のシートには、空白で区切られた名前が入力されています。
この名前を姓で改行します。
Excel VBA実行コード
下記のコードを入力します。
Do~Loopで入力されているセルを調べています。
4列目には、Chr(10)を使った結果を表示します。
5列目には、Chr(13)を使った結果を表示します。
6列目には、vbCrLfを使った結果を表示します。
Option Explicit
Private Sub MyChar()
Dim s As String
Dim i As Long
Dim sei As String
Dim mei As String
i = 2
Do
s = Cells(i, 2)
If s = "" Then
Exit Do
Else
sei = Left(s, InStr(s, " ") - 1)
mei = Right(s, Len(s) - InStr(s, " "))
Cells(i, 4) = sei & Chr(10) & mei
Cells(i, 5) = sei & Chr(13) & mei
Cells(i, 6) = sei & vbCrLf & mei
End If
i = i + 1
Loop
End Sub
実行結果
Chr(10)とvbCrLfは改行され2行になっていますが、Chr(13)は空白が削除されただけで1行のままです。
以上のことから改行するには、Chr(10)とvbCrLfになりますが、Chr(10)はカーソル位置が先頭にならないことを考えると、通常vbCrLfを使うのがいいようです。