Excelで全角の「123」を半角の「123」にそろえる作業と、計算できる数値へ変える作業は別です。半角数字でも文字列として保存されている場合があり、反対に入力時の認識で数値になっている場合もあります。見た目だけで変換方法を決めると、商品IDの先頭の0や長い番号を失う原因になります。
【要点】数量や金額は半角化した結果を数値へ変換し、IDや電話番号は文字列として残します。元の列を保存し、別の列で結果と型を確認してから確定してください。この記事は数字の整形とデータ型の判断を中心に説明します。
ADVERTISEMENT
1. 数値にする列と文字列のまま残す列を分ける
数量の「00123」は、計算に使うなら数値123でよい場合があります。一方、会員IDの「00123」は、半角にしても文字列の「00123」として5桁を維持する必要があります。同じ入力でも、列の目的によって完成形は違います。
変換前に、列見出しだけでなく実際の用途を確認します。足し算や平均に使う金額なのか、別システムと照合する識別番号なのかを決めてください。コードに数字しか使われていなくても、それだけで数値化してよいとは判断できません。

セルが数値かを調べるには、空きセルで=ISNUMBER(A2)を使います。TRUEなら数値、FALSEなら数値以外です。右寄せ・左寄せは書式で変更できるので、型の確定には使いません。緑色の三角がない場合も、文字列ではないと断定できません。
2. 元のデータを残して半角化する
A列が元のデータなら、B列を「半角化結果」として用意します。B2へ次の式を入れ、必要な行へコピーします。元のA列は上書きしません。
=ASC(A2)
例えばA2に文字列「123」が入っている場合、B2は「123」という文字列になります。ASC関数は全角文字を対応する半角文字へ変換する関数であり、数値型へ変えるための関数ではありません。また数字だけを対象にする機能ではなく、対応する英字やカタカナなども影響を受けるため、商品名や住所全体へ適用する際は注意が必要です。
この記事のように数字中心の列でも、符号、小数点、桁区切り、単位が混ざっているセルは別に点検します。空の行も確認し、式を最終行より先へ大量にコピーして不要な結果を作らないようにします。最初に数行を試し、正数、負数、小数、先頭0のある値で期待どおりかを比較してください。
3. 数量・金額だけをVALUEで数値化する
B列の半角化結果を確認できたら、C列を「数値化結果」として用意し、C2に次の式を入れます。
=VALUE(B2)
文字列の「123」は数値123へ、「00123」も数値123へ変わります。先頭0が落ちるのは数値として扱う結果なので、ID列ではこの操作を行いません。C2に対する=ISNUMBER(C2)がTRUEであることと、桁や符号が合っていることの両方を確認します。
VALUE関数は、Excelが認識する数値・日付・時刻の文字列を数値へ変換します。したがって「1/2」のような曖昧な表記を、必ず数量の0.5にする関数として使わないでください。単位や区切りの意味が明確で、数として扱うと決めた列に限定します。
例えば文字列の「12」「34」「54」を半角化・数値化すると、12、34、54になり、合計は100です。変換後の合計だけでなく、変換前の原票と各行を照合します。文字列を無視していたSUMの値が増えたからといって、その増加分が正しい金額とは限りません。
4. IDの先頭0と16桁以上の番号を守る
IDはASCの結果を文字列として使い、VALUEや「数値に変換する」は実行しません。新しくIDを入力する列や、結果を受け取る列では、事前に表示形式を「文字列」にしておきます。確認後にコピーする場合は「値」の貼り付けを使い、先頭0と文字数が維持されたことを照合してください。
Excelが数値として扱う精度には15桁の制約があるため、16桁以上の識別番号は文字列で保管します。例えば「1234567890123456」を半角化する場合も、完成形は文字列の「1234567890123456」です。数値化してから文字列へ戻しても、既に失われた桁は復元できません。
先頭の0を表示形式の「00000」で補う方法は、保存された数値123を00123と見せる方法です。5文字のIDを文字列として保存することとは違います。他システムへ渡す用途では、見た目だけでなく実際の型と桁を守る必要があります。詳しくはMicrosoftの先頭0と長い番号の保持方法を確認してください。
CSVをダブルクリックで開いた段階で番号が数値化される場合もあります。取り込み時にID列を文字列として指定し、読み込み後に原ファイルと比較します。保存後にCSVを開き直す場合も同じ注意が必要です。
5. Ctrl + Hを使う場合は対象文字と範囲を限定する
特定の文字だけを直すなら、コピーした範囲に対してCtrl + Hの置換を使えます。検索する文字列を全角の「1」、置換後を半角の「1」にします。全角と半角は見た目が似ているので、入力した文字を確認してから1件ずつ試します。
「すべて置換」の前に、対象が修正する列の範囲だけになっていること、検索場所がブック全体ではないことを確認します。「1」を「1」にしただけでは「2」から「9」や「0」は変わりません。複数の数字をそろえるならASCで比較する方が、変換前後を残しやすくなります。
置換はセルの内容を直接変え、Excelの再解釈も関係するため、ID列には特に慎重に使います。書式や検索条件が以前の操作から残っている場合もあるので、「オプション」を確認します。原文の数字を修正する作業なのか、表示だけを変えたいのかも区別してください。
6. エラーが出るセルは個別に原因を確かめる
VALUEで#VALUE!になった場合は、数として認識できない文字が残っているかを調べます。「123個」の単位、全角スペース、別の種類のマイナス記号などが候補です。見た目が似ているからといって記号をまとめて消すと、負数を正数へ変えてしまうため、元の意味を確認してから修正します。
海外データでは「1,5」が小数の1.5を意味する場合があります。カンマをすべて削除すると15に変わってしまいます。区切り記号の規則が分かっている場合は、NUMBERVALUE関数で小数点と桁区切りを指定する方法を検討します。分からないまま地域設定を変更して帳尻を合わせないでください。
変換をやり直すときは、残しておいた元列から再開します。すでに上書きした直後ならCtrl + Zを使えますが、保存・終了後も取り消せるとは限りません。失われた先頭0や末尾桁を推測で補わず、原ファイルや提供元のデータへ戻ります。
継続的に取り込むデータでは、エラーになった行番号と元の文字列を控えて提供元へ確認します。変換できた行だけで合計すると一部の数量を落とすため、総件数と未確認件数も合わせて管理してください。
7. 半角化の完了後に型・桁・合計を点検する
数量・金額の列ではISNUMBERの結果、符号、小数、合計を確認します。ID列では文字列のままであること、先頭0、文字数、元データとの一対一の対応を確認します。エラー行を0へ置き換えて隠すのではなく、確認が必要な行として残してください。
全角数字を半角へそろえる目的は、すべてを数値にすることではありません。計算する列と照合する列を分けて仕上げれば、見た目を統一しながらデータの意味も守れます。
超解決 Excel・Word研究班
企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。
Office・仕事術の人気記事ランキング
- 【Excel】オートフィル(右下の+)が効かない!ドラッグできない時のオプション有効化設定
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Outlook】祝日が表示されない・重複する時の対処|追加方法と対象年の確認
- 【Excel】COUNTAでセルの個数を数える方法|空文字・空白・COUNTとの違い
- 【Word】差し込み印刷の金額にカンマを付ける方法|小数・0・空欄の確認
- 保存せずに閉じたExcel・Wordを復元する方法|自動回復・未保存ファイル・履歴の確認
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Outlook】受信メールを自動で別アカウントへ転送するルール設定手順
- 【Outlook】メール送信時にエラーになる「送信不能」の原因切り分け
