セルを連結したら読みにくくなった…そんな“あの瞬間”を救うCHAR関数

セルを連結したら読みにくくなるあの瞬間・・・
Excelで作業をしていると、
「複数のセルに入っている情報をひとつの文章にまとめたい」と思うことがあります。
例えば・・・
住所の都道府県・市区町村・番地を1行にまとめたり、
顧客名とコメントを並べて表示したりするケースです。
そんなときによく使うのが、=A1&B1&C1 のようなセルの連結。
ところが、実際に表示してみると──東京都千代田区丸の内1-1-1山田太郎
💦 このように、文字が詰まって表示されてしまい、とても読みにくい結果になります。
文章としては正しいのに、区切りがないために意味が伝わりづらい。
この「なんとなく違和感がある状態」が、Excelを使っていてよく遭遇する“あの瞬間”です。
CHAR関数とは何か
Excelには「CHAR(キャラクター)」という関数があります。
この関数は、指定した文字コードに対応する文字を返すという機能を持ちます。
普段はあまり意識しない「文字コード」ですが、
Excelの内部では・・・
改行やタブ、スペースといった“区切り”もそれぞれコードで管理されています。
たとえば以下のようなものです。
| 文字 | コード | CHAR関数の例 |
|---|---|---|
| 改行 | 10 | CHAR(10) |
| スペース | 32 | CHAR(32) |
| タブ | 9 | CHAR(9) |
つまり、CHAR関数を使えば・・・
これらの制御文字を数値で指定して挿入できるということです。
これにより、セルを連結したあとでも、
改行やスペースを自由にコントロールできるようになります。

CHAR関数そのものの仕組みや使い方を確認したい方は、こちらの記事をご覧ください。 CHAR関数の構文解説と使用ガイド − 指定したコード番号に対応する文字を返し、改行などを扱う −
CHAR(10)により、改行を入れる
セルを連結したときに最も多い悩みが、「行を分けて表示したいのに改行されない」というものです。
たとえば、住所・氏名・部署が別々のセルに入力されている場合を考えてみましょう。
| A列(住所) | B列(氏名) | C列(部署) |
|---|---|---|
| 東京都千代田区丸の内1-1-1 | 山田太郎 | 営業部 |
この3つの情報をまとめて1つのセルに表示したいとき、次のように「&」で連結することがあります。
<code>=A1 & B1 & C1</code>
Code language: HTML, XML (xml)
すると、次のようにすべての文字がつながってしまいます。
| A列(住所) | B列(氏名) | C列(部署) | 単純なセル連結(改行なし) |
|---|---|---|---|
| 東京都千代田区丸の内1-1-1 | 山田太郎 | 営業部 | 東京都千代田区丸の内1-1-1山田太郎営業部 |
💦 文字が詰まっていて、とても読みづらいですね。
ここで役に立つのが CHAR(10)(改行コード)です。
💡 改行を入れたい位置に CHAR(10) を挟むことで、
セル内に改行を入れることができます。
<code>=A1 & CHAR(10) & B1 & CHAR(10) & C1</code>
Code language: HTML, XML (xml)
すると、次のように見やすい形になります。
| A列(住所) | B列(氏名) | C列(部署) | CHAR関数に交えた連結結果(改行あり) |
|---|---|---|---|
| 東京都千代田区丸の内1-1-1 | 山田太郎 | 営業部 | 東京都千代田区丸の内1-1-1 山田太郎 営業部 |
(※ 列「連結結果(改行あり)」は折り返して全体を表示する」をオンにする)
このように、CHAR関数を使うことで、
1つのセルに複数行の情報を整理して表示できるようになります。
はい、承知しました。
いま出していた4のセクションは「A列・B列」しか使っていなかったですね。
3のセクションと**同じデータ構造(A列=住所、B列=氏名、C列=部署)**に統一して修正します。
CHAR(32)により、スペースを入れる
セルを連結したとき、改行ほど大げさではないけれど「少し間を空けたい」という場面もあります。
たとえば、住所・氏名・部署を横並びで1行にまとめたい場合です。
| A列(住所) | B列(氏名) | C列(部署) |
|---|---|---|
| 東京都千代田区丸の内1-1-1 | 山田太郎 | 営業部 |
この3つを「&」で連結すると、次のように文字が詰まってしまいます。
<code>=A1 & B1 & C1</code>
Code language: HTML, XML (xml)
| A列(住所) | B列(氏名) | C列(部署) | 単純なセル連結(スペースなし) |
|---|---|---|---|
| 東京都千代田区丸の内1-1-1 | 山田太郎 | 営業部 | 東京都千代田区丸の内1-1-1山田太郎営業部 |
どこで区切ればいいのか分かりにくいですね。
そんなときに使えるのが CHAR(32)(半角スペース)です。
文字と文字の間に CHAR(32) を入れることで、自然な間が生まれます。
<code>=A1 & CHAR(32) & B1 & CHAR(32) & C1</code>
Code language: HTML, XML (xml)
| A列(住所) | B列(氏名) | C列(部署) | CHAR関数に交えた連結結果(半角スペースあり) |
|---|---|---|---|
| 東京都千代田区丸の内1-1-1 | 山田太郎 | 営業部 | 東京都千代田区丸の内1-1-1 山田太郎 営業部 |
このように、スペースを加えるだけでも文字のまとまりが整い、読みやすくなります。
改行を入れるほどではないが、少し見た目を整えたいときに便利な方法です。
まとめ
Excelでセルを連結すると、住所・氏名・部署などの情報がすべて1行につながり、判読しづらくなります。
この問題は、CHAR 関数で制御コードを挿入することで解決できます。
| 使用するコード | 内容 | 表示上の挙動 |
|---|---|---|
CHAR(10) | 改行コード | セル内で行が分かれる(折り返し設定が必要) |
CHAR(32) | 半角スペース | 文字の間に空白が入る(列幅に依存) |
CHAR(10) は複数の情報を上下に並べたい場合、CHAR(32) は横方向で区切りをつけたい場合に使えます。
どちらも Excel の標準機能だけで扱えるため、
複雑な関数や書式設定を使わずに、
データの可読性を保ちながら出力を整えることができます。

