Excel関数 逆引き集 | タブ挿入 → CHAR(9)

Excel VBA Excel
スポンサーリンク

概要

「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・システム連携で圧倒的に便利な“タブ文字” です。
「スペースではなくタブで区切りたい」場面では、ぜひこのテクニックを使ってみてください。

タイトルとURLをコピーしました