ExcelでCSVファイルを開いた際に、氏名や住所などの日本語が文字化けすると、元データの文字コードがExcelの想定と異なっている可能性があります。

Excelには文字コード名を直接返す標準関数はありませんが、CODE関数、UNICODE関数、CSVのインポート画面を組み合わせることで、文字の数値や保存形式から状態を確認できます。

確認の基本手順

・Excel上の文字はCODE関数またはUNICODE関数で数値を確認します。

・CSVはデータの取得から読み込み、文字コードの候補を確認します。

・保存時にはUTF-8かANSIかを用途に合わせて選びます。

この記事では、文字化けの原因を切り分けながら、Excelで文字コードを確認する実践的な方法を解説します。

なお、数式例は1行目を見出し行とし、データを2行目から入力した表を前提にしています。

 

エクセルで文字コードを確認する方法【UNICODE関数】

それではまず、Excelのセルに入力されている文字をUNICODE関数で確認する方法について解説していきます。

A B C
文字 UNICODE結果 確認内容
あ =UNICODE(A2) 先頭文字の文字番号
A =UNICODE(A3) 英字の文字番号

 

UNICODE関数の入力手順

UNICODE関数は、指定した文字列の先頭にある1文字をUnicodeの文字番号として返す関数です。

たとえばA2セルに「あ」が入力されている場合、B2セルへ=UNICODE(A2)と入力すると、Unicodeにおける「あ」の番号である12354が表示されます。

数式

=UNICODE(A2)

UNICODE関数は、文字列の先頭文字だけを判定します。

セル内に複数の文字がある場合は、LEFT関数で対象文字を切り出す方法も便利です。

たとえば先頭から2文字目を確認したい場合は、=UNICODE(MID(A2,2,1)) と入力します。

Unicodeは世界共通の文字体系であり、日本語、英字、記号、絵文字などを幅広く扱えます。

エクセルで文字コードを確認する方法【UNICODE関数】 - UNICODE関数の入力手順

そのため、現在Excelで表示されている文字がUnicodeとしてどのような文字なのかを調べる用途に向いています。

ただし、UNICODE関数の結果だけから、そのCSVがUTF-8で保存されているのか、Shift_JISで保存されているのかを断定することはできません。

確認できるのは、Excelが読み込んだ後の文字情報である点を押さえておきましょう。

 

文字化けした文字の判定

CSVを直接開いて文字化けしている場合でも、UNICODE関数で表示中の文字を調べると、どの文字として読み込まれたかを確認できます。

たとえば本来は「髙」のはずなのに別の記号や文字に見える場合、セルの先頭文字へUNICODE関数を適用します。

表示結果が想定するUnicode番号と異なれば、読み込み時点で別の文字へ変換されている可能性があります。

文字化けは見た目だけで判断せず、数値と元ファイルの文字コードを照合することが重要です。

元データを再取得できる場合は、UTF-8、Shift_JIS、ANSIなど別の文字コードで読み込み直し、同じセルの結果を比較すると原因を絞り込めます。

エクセルで文字コードを確認する方法【UNICODE関数】 - 文字化けした文字の判定

全角の波ダッシュ、丸数字、旧字体などは環境差の影響を受けやすいため、業務データでは特に注意が必要です。

確認対象が空白セルの場合、UNICODE関数はエラーになるため、IFERROR関数を組み合わせると作業しやすくなります。

空白を含むデータの例

=IFERROR(UNICODE(A2),””)

この式なら、A2が空白のときはエラー表示ではなく空欄になります。

 

Unicode番号を確認する際の注意点

UNICODE関数が返す値は文字コードそのものではなく、Unicode文字集合内での文字番号です。

つまり、UTF-8やUTF-16はUnicodeをファイルへ保存するときの符号化方式であり、UNICODE関数の結果とは役割が異なります。

この違いを理解すると、セル内の文字確認とCSVファイルの保存形式確認は別作業であることが分かります。

日本語の「あ」が12354と表示されても、元ファイルがUTF-8なのかUTF-16なのかは、Excelのセル値だけでは判別できません。

CSVの実際の文字コードを知りたいときは、後述するテキストまたはCSVからの取り込み画面を利用しましょう。

【操作のポイント】UNICODE関数は文字そのものの確認に使い、CSVの保存形式を調べる作業とは分けて考えます。

 

エクセルで文字コードを確認する方法【CODE関数】

続いては、CODE関数を使って文字のコード値を確認する方法を解説していきます。

A B C
文字 CODE結果 用途
A =CODE(A2) 半角英字の確認
1 =CODE(A3) 半角数字の確認

 

CODE関数の役割

CODE関数は、文字列の先頭文字に対応する数値コードを返す関数です。

A2セルに半角英字のAがある場合、=CODE(A2) の結果は65になります。

半角数字の1であれば49、半角スペースであれば32というように、基本的なASCIIコードを確認できます。

英数字や半角記号の混入を調べる作業では、CODE関数が役立ちます。

たとえば商品コードの先頭に見えない空白が入っている疑いがあるとき、CODE関数で32が表示されれば半角スペースと判断できます。

全角スペースの場合はCODE関数だけでは判断しづらいため、LEN関数やUNICODE関数も併用しましょう。

エクセルで文字コードを確認する方法【CODE関数】 - CODE関数の役割

文字列の途中を確認したい場合は、MID関数で一文字取り出してからCODE関数に渡します。

2文字目のコードを確認する数式

=CODE(MID(A2,2,1))

データ内の不要な半角記号を探すときに利用できます。

 

CODE関数とUNICODE関数の使い分け

CODE関数とUNICODE関数は似ていますが、確認できる範囲が異なります。

CODE関数は従来のコードページを意識した関数であり、英数字などの簡易確認に適しています。

一方でUNICODE関数は、日本語、旧字体、特殊記号を含む幅広い文字を安定して確認できる関数です。

CSVの文字化け原因を調べる目的なら、基本的にはUNICODE関数を優先するとよいでしょう。

ただし、半角スペース、タブ、改行、制御文字などを確認する場面では、CODE関数の数値が判断材料になります。

目的に応じて両方の関数を使い分けることで、データクリーニングの精度が上がります。

エクセルで文字コードを確認する方法【CODE関数】 - CODE関数とUNICODE関数の使い分け

文字数を確認するLEN関数と組み合わせれば、目視では気付きにくい不要文字の発見にもつながります。

 

不要文字を検出する数式

業務データでは、コピー元のWebサイトや基幹システムの影響で、タブや改行などがセル内へ混入することがあります。

たとえばセルの先頭にタブがある場合、=CODE(A2) の結果は9となります。

改行は10または13として判定されることがあり、環境やデータの作られ方によって確認方法を変える必要があります。

先頭文字が半角スペースか判定する数式

=IF(CODE(A2)=32,”先頭に半角スペース”,”問題なし”)

判定結果を下方向へオートフィルすれば、複数行をまとめて確認できます。

ただし空白セルにCODE関数を使うとエラーになるため、実務ではIFERROR関数を追加する方法が安全です。

不要文字を見つけた後は、TRIM関数、CLEAN関数、SUBSTITUTE関数などで除去できます。

【操作のポイント】半角の見えない文字はCODE関数、日本語や特殊文字はUNICODE関数を使って確認します。

 

CSVファイルの文字コード確認と読み込み設定

続いては、CSVファイルの文字コードを確認し、Excelへ正しく読み込む設定について解説していきます。

A B C
氏名 部署 メール
山田太郎 営業部 taro@example.com
佐藤花子 総務部 hanako@example.com

 

データタブからのCSV取り込み

CSVをダブルクリックして開くと、Windowsの関連付けやExcelの設定により、自動判定された文字コードで開かれます。

文字化けを避けるには、ExcelのデータタブからテキストまたはCSVからを選び、インポート画面で文字コードを確認する方法が確実です。

members.csv – Excel − □ ×
ファイル ホーム 挿入 ページ レイアウト 数式 データ 校閲 表示
データの取得
テキストまたはCSVから
➤
更新

members.csv のプレビュー

ファイルの元の形式 65001 Unicode UTF-8 ▼ ➤

ここで文字化けしない候補を選択します

氏名 部署 メール
山田太郎 営業部 taro@example.com
読み込み キャンセル

取り込み時にプレビューの日本語が正常に表示されれば、その文字コードの選択は適切です。

文字化けしている状態で読み込みを確定せず、プレビューで正しく読める候補を選ぶことが大切です。

 

UTF-8とShift_JISの確認

現在のWebサービスやクラウドサービスから出力されるCSVは、UTF-8であることが増えています。

一方で、古くから使われている国内業務システムでは、Shift_JIS系の文字コードで出力されるケースもあります。

インポート画面のファイルの元の形式では、UTF-8は65001 Unicode UTF-8として表示されることがあります。

候補を変更してプレビューの氏名、住所、機種依存文字が正しく表示されるかを確認しましょう。

読み込み確認の考え方

UTF-8で文字化けする場合は、日本語のコードページ候補を選び直します。

日本語コードページで文字化けする場合は、65001 Unicode UTF-8を確認します。

ただし、文字化けしている元ファイルを誤った文字コードで保存し直すと、情報が失われることがあります。

元CSVは複製を作成し、元ファイルを上書きしない状態で読み込みテストを行うと安心です。

 

区切り文字とデータ型の設定

CSVの問題は文字コードだけではなく、区切り文字や列のデータ型が影響することもあります。

プレビュー画面で列が一つにまとまっている場合は、区切り記号がカンマとして認識されているかを確認します。

郵便番号や社員番号の先頭のゼロを残したい場合は、読み込み前に対象列のデータ型を文字列へ変更します。

文字コードが正しくても、数値として自動変換されると元データと異なる値になるかもしれません。

確認の優先順

文字が読めるかを確認します。

次に列が正しく分かれているかを確認します。

最後に日付、郵便番号、コードの表示形式を確認します。

読み込み後にUNICODE関数を使えば、表示された特殊文字が意図した文字かを再確認できます。

【操作のポイント】CSVは直接開かず、データタブのテキストまたはCSVから読み込むと文字コードを確認しやすくなります。

 

文字コードの違いと文字化けの原因

続いては、文字コードの違いによって文字化けが起きる原因を確認していきます。

A B C
保存形式 主な用途 注意点
UTF-8 Web、クラウド連携 直接開くと文字化けする場合
Shift_JIS 国内業務システム 一部の特殊文字に注意

 

文字コードと符号化方式の違い

文字コードとは、文字に番号を割り当てるための仕組みです。

Unicodeは多くの言語の文字を共通の番号で扱うための文字集合として広く使われています。

UTF-8はUnicodeの文字をファイルへ保存する代表的な符号化方式です。

一方、Shift_JISは日本語環境で長く利用されてきた文字コード体系です。

同じ日本語でも、保存した側と開く側で想定する方式が違うと文字化けが起こります。

Excelでセルに表示されている文字は、読み込み後に処理された結果です。

そのためファイルの先頭部分やインポート時の設定を確認することが、原因特定には欠かせません。

 

文字化けしやすい文字の種類

人名に含まれる旧字体、丸数字、ローマ数字、髙や﨑などの異体字は、システム間の受け渡しで問題になりやすい文字です。

全角チルダ、波ダッシュ、ダッシュ記号、全角ハイフンなども、見た目が似ていて異なる文字として扱われることがあります。

そのため、画面上で似ているから同じ文字とは限りません。

UNICODE関数の数値を比較することで、似た記号が別文字として入力されていないかを確認できます。

取引先へCSVを渡す場合は、利用する文字コードだけでなく、使用可能な文字の範囲も事前に確認するとトラブルを減らせます。

 

Excelで直接判定できない範囲

Excelの標準関数だけで、任意の外部ファイルのバイト列を解析し、文字コード名を完全に自動判定することは簡単ではありません。

CODE関数とUNICODE関数はセル内の文字を確認する関数であり、CSVファイルの実際のバイト列を読み取る機能ではありません。

そのため、Excel内ではインポート時のプレビューを確認し、必要に応じてテキストエディタやシステム管理者へ確認する流れが現実的です。

自動処理を作る場合でも、文字コードの判定結果だけに依存せず、想定する受信元ごとに固定の取り込みルールを設ける方法が安全です。

【操作のポイント】文字化けの調査では、セルの文字番号、CSVのプレビュー、受信元の出力仕様を順に確認します。

 

CSVをUTF-8で保存する方法

続いては、ExcelのデータをUTF-8形式のCSVとして保存する方法を確認していきます。

A B C
氏名 商品名 備考
高橋一郎 りんご 通常品

 

CSV UTF-8形式の選択

ExcelでCSVを保存するときは、ファイルタブから名前を付けて保存を選びます。

ファイルの種類の一覧からCSV UTF-8 コンマ区切りを選択すると、UTF-8形式で保存できます。

Webサービス、API、海外製ツール、クラウドシステムへデータを渡す場合は、UTF-8が指定される場面が多くあります。

通常のCSVを選ぶと、Windows環境では日本語コードページに合わせた形式になる場合があるため、保存形式を見落とさないようにしましょう。

保存後は、別のExcelブックからデータタブを使って読み込み、文字化けがないか確認すると確実です。

 

CSV保存時の警告への対応

CSV形式では、複数シート、セルの色、数式、図形などExcel固有の機能を保持できません。

保存時に一部の機能が失われるという警告が表示されるのは、CSVの仕様によるものです。

データ提出用のCSVを作成する場合は、元のExcelブックをxlsx形式で残してから、提出用コピーをCSVへ保存すると安心です。

CSVは表計算ファイルではなく、文字データを区切り記号で並べたテキストファイルとして扱われます。

数式セルは計算式ではなく、保存時点で表示されている値として出力される点にも注意しましょう。

 

保存後の再確認方法

保存したCSVをダブルクリックして表示を確認するだけでは、環境によっては適切な文字コードで開けないことがあります。

確認時もデータタブのテキストまたはCSVからを使い、65001 Unicode UTF-8を選んでプレビューを見ます。

氏名、住所、備考欄など日本語を含む列を重点的に確認しましょう。

保存後の確認項目

・日本語と旧字体が正常に表示されるかを確認します。

・カンマを含む項目が列ずれしていないかを確認します。

・郵便番号やコードの先頭のゼロが残っているかを確認します。

相手先のシステムがShift_JISを指定している場合は、UTF-8で保存すると受け取り側で文字化けする可能性があります。

提出仕様に文字コードの指定がある場合は、必ずその指定を優先してください。

【操作のポイント】保存形式はCSV UTF-8 コンマ区切りを選び、提出前に取り込みプレビューで再確認します。

 

まとめ エクセルで文字コードを確認する方法(関数)

Excelで文字コードを確認する際は、まずセル内の文字をUNICODE関数やCODE関数で数値化し、意図しない文字や見えない文字が含まれていないかを調べます。

UNICODE関数は日本語や特殊文字の確認に向き、CODE関数は半角英数字、半角スペース、制御文字の確認に便利です。

CSVの文字コードそのものを確認したい場合は、データタブのテキストまたはCSVから読み込む方法が基本になります。

プレビューでUTF-8や日本語コードページを切り替え、正しく読める形式を選択しましょう。

また、CSVを保存する際は、相手先の指定に合わせてCSV UTF-8 コンマ区切りなどのファイル形式を選ぶことが重要です。

文字化けが起きたときは、元ファイルを上書きせず、読み込み設定と文字の数値を落ち着いて確認していきましょう。

ABOUT ME
white-circle7338
私自身が今まで経験・勉強してきた「エクセル」「ビジネス用語」「生き方」などの情報を、なるべくわかりやすく、楽しく、発信していきます。 一緒に人生を楽しんでいきましょう