Excelの書式・印刷 Excel一覧 Excel操作・関数 その他基本操作 改行

【Excel】改行に使える関数と活用方法

Excelでデータを扱う際、セル内で改行したい! という場面はよくあります。
手動で「Alt + Enter」を押す方法もありますが、関数を使って自動で改行を挿入 することも可能です。

Excelの改行に使える関数と、その活用方法、応用テクニック について解説します。

Excelで改行を挿入する関数

改行コード CHAR(10) を使う

Excelでは、改行コード CHAR(10) を使うことで、関数内で改行を挿入できます。

関数意味
CHAR(10)改行を挿入(Excelの標準改行コード)
SUBSTITUTE(A1, CHAR(10), " ")改行をスペースに置換(改行削除)

注意:「折り返して全体を表示」を有効にしないと改行が見えません!

【Excel】改行コードとは?改行を扱う方法と活用テクニック

文字列を改行して結合する

CHAR(10) を使って改行

異なるセルの内容を改行して結合するには、&CHAR(10) を組み合わせます。

📌 例:「A1の値とB1の値を改行して結合する」

=A1 & CHAR(10) & B1

📌 例:「複数の値を改行して結合」

=A1 & CHAR(10) & B1 & CHAR(10) & C1

結果:セル内で複数の値が改行して表示される!

TEXTJOIN 関数で複数の値を改行

Excel 2016以降では、TEXTJOIN 関数を使うと、配列データを簡単に改行して結合 できます。

📌 例:「A1:C1 の値を改行して結合」

=TEXTJOIN(CHAR(10), TRUE, A1:C1)

結果:セル内で A1, B1, C1 のデータが改行されて表示される!

TEXTJOIN のメリット

  • CHAR(10) を指定することで、区切り文字を改行にできる
  • TRUE を指定すると、空白セルを無視できる
  • 複数のセル範囲を一括処理できる!

セル内の改行を削除する

改行を削除したい場合は、SUBSTITUTE 関数を使います。

SUBSTITUTE 関数で改行を削除

📌 例:「A1 の改行を削除」

=SUBSTITUTE(A1, CHAR(10), " ")

結果:セル内の改行がスペースに置換される!

📌 例:「A1 の改行を削除して連結」

=SUBSTITUTE(A1, CHAR(10), "")

結果:セル内の改行が削除され、1行に整形!

改行をカウントする

改行の数をカウントしたい場合は、LEN 関数と SUBSTITUTE 関数を組み合わせます。

✅セル内の改行回数を数える

📌 例:「A1 の改行回数をカウント」

=LEN(A1) - LEN(SUBSTITUTE(A1, CHAR(10), ""))

結果:A1セル内の改行回数が表示される!

仕組み

  • LEN(A1)A1の文字数
  • LEN(SUBSTITUTE(A1, CHAR(10), ""))改行を削除した後の文字数
  • 改行の数 = もともとの文字数 - 改行削除後の文字数

VBAで改行を操作する

大量のデータに対して改行を追加・削除する場合は、VBAを使うと効率的です。

【VBAで改行を追加】

Sub AddLineBreak()

Dim rng As Range
For Each rng In Selection

rng.Value = rng.Value & vbLf & "追加の行"

Next rng

End Sub

結果:選択範囲のセルに改行を追加!


【VBAで改行を削除】

Sub RemoveLineBreaks()

Dim rng As Range
For Each rng In Selection

rng.Value = Replace(rng.Value, vbLf, " ")

Next rng

End Sub

結果:選択範囲のセル内改行がすべて削除される!


CSVファイルでの改行処理

CSVファイルを扱う際、改行が原因でデータがずれることがあります。

CSVの改行処理でのポイント

  1. Excelでは CHAR(10)(LF)を改行コードとして使用
  2. Windowsの改行(CHAR(13) & CHAR(10))を使わない
  3. VBAで正しい改行コードを適用

【📌 VBAでCSV用の改行を適用】

Sub ExportCSV()

Dim rng As Range, rowText As String
Dim csvFile As String
csvFile = ThisWorkbook.Path & "\export.csv"

Open csvFile For Output As #1
For Each rng In Range("A1:A10")

rowText = rng.Value & vbLf
Print #1, rowText

Next rng
Close #1

End Sub

結果:Excelで正しく開ける改行付きCSVファイルが作成される!


まとめ

Excelで 改行の関数 を正しく理解すれば、データ入力や表示を柔軟に調整できます。

📌 改行の関数の使い方まとめ
目的関数
セル内で改行するCHAR(10)=A1 & CHAR(10) & B1
複数のセルを改行して結合TEXTJOIN=TEXTJOIN(CHAR(10), TRUE, A1:C1)
改行を削除するSUBSTITUTE=SUBSTITUTE(A1, CHAR(10), " ")
改行をカウントするLEN + SUBSTITUTE=LEN(A1) - LEN(SUBSTITUTE(A1, CHAR(10), ""))
VBAで改行を追加vbLfrng.Value = rng.Value & vbLf & "追加"
VBAで改行を削除ReplaceReplace(rng.Value, vbLf, " ")

-Excelの書式・印刷, Excel一覧, Excel操作・関数, その他基本操作, 改行