概要
CHAR関数は「指定したコード番号に対応する文字を返す」関数です。Excelでは文字コード(ANSIコード)を使って文字を管理しており、CHARを使うことで任意のコード番号から文字を取得できます。改行やタブなどの制御文字を挿入したり、特殊記号を表示したいときに役立ちます。
基本の使い方
書式
=CHAR(コード番号)
- コード番号:1〜255の範囲で指定。対応する文字が返されます。
例
=CHAR(65) // "A"
=CHAR(97) // "a"
=CHAR(10) // 改行
=CHAR(9) // タブ
具体例
改行を挿入する
="東京都江東区" & CHAR(10) & "東陽町"
セル内で「東京都江東区」と「東陽町」が改行されて表示されます。セルの書式設定で「折り返して全体を表示」をオンにする必要があります。
タブを挿入する
="商品名" & CHAR(9) & "価格"
「商品名」と「価格」の間にタブが入ります。テキストファイルに出力するとタブ区切りとして認識されます。
特殊記号を表示する
=CHAR(169)
コピーライト記号「©」が表示されます。
応用テンプレート
複数の制御文字を組み合わせる
="住所:" & CHAR(9) & A2 & CHAR(10) & "電話:" & CHAR(9) & B2
住所と電話をタブで区切り、改行して表示します。
TEXTJOINと組み合わせて改行区切りリストを作る
=TEXTJOIN(CHAR(10),TRUE,A2:C2)
A2〜C2の値を改行で区切ってまとめて表示します。
SUBSTITUTEで制御文字を削除
=SUBSTITUTE(A2,CHAR(10),"")
セル内の改行を削除して1行に整えます。
よくあるつまずきと対策
改行が表示されない
CHAR(10)を使った場合は「折り返して全体を表示」をオンにしてください。
全角スペースや特殊文字はコードが異なる
「スペース」でも半角と全角でコード番号が違います。必要に応じてSUBSTITUTEで統一しましょう。
環境によって文字が異なる場合がある
一部のコード番号は環境依存で表示が変わることがあります。特に記号や特殊文字は注意が必要です。
例題
問題1: A2セルの文字列とB2セルの文字列を改行してC2に表示してください。
解答例:
=A2 & CHAR(10) & B2
問題2: D2セルの文字列とE2セルの文字列をタブで区切ってF2に表示してください。
解答例:
=D2 & CHAR(9) & E2
問題3: コード番号65をCHAR関数で文字に変換し、G2に表示してください。
解答例:
=CHAR(65)
問題4: H2セルの文字列に含まれる改行を削除してI2に表示してください。
解答例:
=SUBSTITUTE(H2,CHAR(10),"")
問題5: J2〜L2の3つのセルを改行で区切ってM2にまとめて表示してください。
解答例:
=TEXTJOIN(CHAR(10),TRUE,J2:L2)
まとめ
CHAR関数は「コード番号から文字を取得する」便利な関数です。改行(CHAR(10))、タブ(CHAR(9))、特殊記号などを挿入することで、文字列を柔軟に整形できます。講師として強調したいのは「CHARは制御文字を扱うための入り口」。これを理解すれば、Excelでの文字列処理が一段と自由になります。
