更新日:、 作成日:

エクセル CHAR 関数:文字コードを文字に変換する

はじめに

エクセルの CHAR 関数の使い方を紹介します。

CHAR 関数は文字コード (ANSI か JIS) を文字に変換します。

65 なら A に変換します。半角文字なら 0 ~ 255 の範囲を指定します。ANSI コードと同じ値です。

9250 なら に変換します。全角文字なら 0 ~ 約 38700 の範囲を指定します。JIS コード (ISO-2022-JP) と同じ値です。Shift_JIS とは別物です。

10 ならラインフィード (セル内の改行) 文字に変換します。

改行文字やタブ文字など特殊文字を入力できます。

文字の文字コードを取得するには「CODE 関数」を使用します。
Unicode から文字に変換するには「UNICHAR 関数」を使用します。

CHAR 関数の引数

CHAR(文字コード)
文字コードを文字に変換します。

引数「文字コード」半角なら ANSI コードを指定します。
全角なら JIS コードを指定します。
スピル化

スピル化:セルの範囲や配列を指定すると結果が「スピル」します。

特殊文字

VBA でも使用する特殊文字に次のものがあります。

文字コード 名前 VBA の定数
8バックスペースvbBack
9タブvbTab
10ラインフィード (セル内の改行)vbLf
11垂直タブvbVerticalTab
12フォームフィード (印刷の改ページ)vbFormFeed
13キャリッジリターンvbCr
13 & 10改行 (キャリッジリターンとラインフィードを結合した文字)vbCrLf
34ダブルクォーテーションなし

セル内の改行文字は 10 ラインフィードです。

ANSI の文字一覧は「VBA Chr 関数:文字コードを文字に変換する」をご覧ください。

使い方

CHAR 関数の使い方を紹介します。

文字コードを文字に変換する

セル「B3」の文字コードを文字に変換します。

=CHAR(B3)
7

セル内の改行文字に変換する

文字コード 10 と結合してセル内の改行をします。

="一行目"&CHAR(10)&"二行目"
8

改行されていないときは、その [セル] を選択した状態で、[ホーム] タブから配置グループにある [折り返して全体を表示する] をクリックしてオンにします。

Alt + Enter で改行したときは自動でチェックされます。
word-break

改行されて表示されます。

解説

引数「文字コード」は「CODE 関数」で取得した値と対応してるため、相互変換できます。

引数「文字コード」が 0 ~ 255 のときは半角で、A1 などに変換します。ANSI コードと同じ値です。

引数「文字コード」が 0 ~ 約 38700 のときは全角で、 などに変換します。JIS コード (ISO-2022-JP) と同じ値です。

引数「文字コード」が 0 や変換できない値のときはエラー #VALUE になります。Unicode 専用文字 などには変換できません。

  • ANSI コード:半角の英数字や記号に使用される文字コードです。ASCII コードと同じ値です。
  • JIS コード:ANSI の文字に加えてひらがなや漢字などの全角文字を扱えるようにしたものです。「VBA Asc 関数:文字コードを取得する」で扱う Shift_JIS とは別物です。

Unicode 文字に変換するには「UNICHAR 関数」を使用します。

「HEX2DEC 関数」と「DEC2HEX 関数」を使用して 16 進数と 10 進数を相互変換できます。