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の改行処理でのポイント
- Excelでは
CHAR(10)(LF)を改行コードとして使用 - Windowsの改行(
CHAR(13) & CHAR(10))を使わない - 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で改行を追加 | vbLf | rng.Value = rng.Value & vbLf & "追加" |
| VBAで改行を削除 | Replace | Replace(rng.Value, vbLf, " ") |