概要
「1セルの中で“タブ区切り”のようにスペースを空けたい」
「項目名と値の間をきれいにそろえたい」
「テキストをコピーしてメモ帳に貼ったとき、タブ区切りとして扱わせたい」
こういうときに使えるのが CHAR(9)(タブ文字)です。
Excel のセル内ではタブは見た目に反映されにくいですが、
文字列としては確実にタブが挿入されるため、
「外部テキストに貼り付ける」「CSV/TSV の準備をする」などで役立ちます。
ここでは、初心者向けに CHAR(9) を使ったタブ挿入テクニックを、
例題つきで丁寧に解説します。
CHAR(9) の基本(タブ文字とは?)
タブ文字は「区切りとして扱われる特殊文字」
CHAR(9) は、Excel における タブ文字(Tab) を表します。
="A" & CHAR(9) & "B"
この式は、実際には
A B
のように「A と B の間にタブ」が入った文字列になります。
ただし、Excel のセル内ではタブは“見た目ではほぼ変化しない”ため、
メモ帳・エディタ・TSV 形式に貼り付けたときに効果を発揮する
という点がポイントです。
パターン1:2つの文字列の間にタブを挟む
例:項目名と値をタブで区切る
A2:氏名
B2:山田太郎
C2 に次の式を書きます。
=A2 & CHAR(9) & B2
セル内では見た目は変わりませんが、
メモ帳に貼り付けると次のようにタブ区切りになります。
氏名 山田太郎
TSV(タブ区切りデータ)を作るときに便利です。
パターン2:複数項目をタブ区切りで並べる
例:氏名・部署・内線をタブ区切りで並べたい
A2:山田太郎
B2:営業部
C2:1234
D2 に次の式を書きます。
=A2 & CHAR(9) & B2 & CHAR(9) & C2
メモ帳に貼ると次のようになります。
山田太郎 営業部 1234
Excel 内では見えにくいですが、
外部テキストではしっかりタブ区切りとして扱われます。
パターン3:TEXTJOIN と組み合わせて「タブ区切りリスト」を作る
複数セルをタブ区切りでまとめたいときは TEXTJOIN が便利です。
例:A2:C2 をタブ区切りで結合
=TEXTJOIN(CHAR(9), TRUE, A2:C2)
- 区切り文字:CHAR(9)(タブ)
- TRUE:空白セルを無視
これで、TSV 形式の 1 行が簡単に作れます。
パターン4:条件付きでタブ区切りを挿入する(IF と組み合わせ)
「値があるときだけタブ区切りで追加したい」
という場合は IF と組み合わせます。
例:部署や内線が空欄のときはスキップ
A2:氏名
B2:部署(空欄の可能性あり)
C2:内線(空欄の可能性あり)
D2 に次の式を書きます。
=A2 &
IF(B2<>"", CHAR(9) & B2, "") &
IF(C2<>"", CHAR(9) & C2, "")
空欄があっても余計なタブが出ないため、
TSV の整形がきれいにできます。
パターン5:外部システム用のタブ区切りデータを作る
外部システムが「タブ区切りのテキスト」を要求する場合、
Excel で次のように作ってコピーするだけで対応できます。
例:商品データをタブ区切りで出力
A2:商品名
B2:カテゴリ
C2:価格
D2 に次の式を書きます。
=A2 & CHAR(9) & B2 & CHAR(9) & TEXT(C2,"#,##0")
メモ帳に貼ると次のようになります。
りんご 食品 120
そのまま TSV として利用できます。
タブ挿入(CHAR(9))の注意点
1. Excel のセル内では見た目が変わらない
タブはセル内でスペースのように見えません。
外部に貼り付けて初めて効果がわかる点に注意。
2. 印刷ではタブは反映されない
印刷物ではタブはスペース扱いになります。
3. TSV(タブ区切り)データ作成に最適
CSV の代わりに TSV を作りたいときに非常に便利です。
タブ挿入の“型”まとめ
文字列の間にタブ
=A2 & CHAR(9) & B2
複数項目をタブ区切りで
=A2 & CHAR(9) & B2 & CHAR(9) & C2
TEXTJOIN でタブ区切り
=TEXTJOIN(CHAR(9), TRUE, A2:C2)
条件付きタブ挿入
=A2 & IF(B2<>"",CHAR(9)&B2,"")
例題
問題1
A2 と B2 の値をタブ区切りで結合したいです。
CHAR(9) を使った式を書いてください。
=A2 & CHAR(9) & B2
問題2
A2:氏名、B2:部署、C2:内線
これらをタブ区切りで 1 行にしたいです。
式を書いてください。
=A2 & CHAR(9) & B2 & CHAR(9) & C2
問題3
A2:C2 の値をタブ区切りで結合したいです。
TEXTJOIN と CHAR(9) を使った式を書いてください。
=TEXTJOIN(CHAR(9), TRUE, A2:C2)
問題4
A2:氏名
B2:部署(空欄の可能性あり)
C2:内線(空欄の可能性あり)
空欄はスキップし、タブ区切りで結合したいです。
IF と CHAR(9) を使った式を書いてください。
=A2 &
IF(B2<>"", CHAR(9) & B2, "") &
IF(C2<>"", CHAR(9) & C2, "")
問題5
A2:商品名
B2:カテゴリ
C2:価格
これらをタブ区切りで結合し、価格は「#,##0」形式にしたいです。
式を書いてください。
=A2 & CHAR(9) & B2 & CHAR(9) & TEXT(C2,"#,##0")
CHAR(9) は Excel の中では地味ですが、
外部テキスト・TSV・システム連携で圧倒的に便利な“タブ文字” です。
「スペースではなくタブで区切りたい」場面では、ぜひこのテクニックを使ってみてください。
