Excelでは、見た目が数字でも計算用の数値として扱われているデータと、文字列として保存されているデータがあります。
社員番号、郵便番号、商品コード、先頭のゼロを残したい番号などでは、数値を文字列に変換する操作が必要です。
表示形式だけを変える方法、TEXT関数で別セルに文字列を作る方法、値として確定させる方法を使い分けると、並べ替えや検索、CSV出力での困りごとも減らせます。
見た目だけ整えるなら表示形式、別セルで文字列を作るならTEXT関数、既存データを確定して変えるなら区切り位置や貼り付けを使うのが基本です。
サンプルデータは1行目を見出し行とし、A列に元の数値、B列に変換後の結果を入れる前提で説明します。
エクセルで数値を文字列に変換する方法【表示形式】
それではまず、数値を文字列のように表示し、先頭のゼロや桁数を整える方法について解説していきます。
| A列 元の数値 | B列 表示形式後 |
|---|---|
| 123 | 00123 |
| 45 | 00045 |
ユーザー定義の文字列表示
数値の計算機能を残したまま、表示だけを文字列風にしたい場合は、セルの表示形式を変更します。
たとえば郵便番号のように5桁で表示したい場合、元データが123でも画面上は00123と表示できます。

対象セルを選択して右クリックし、セルの書式設定を開きます。
表示形式タブでユーザー定義を選択し、種類の欄に00000と入力してOKを押しましょう。
00000は5桁固定で表示する指定です。
7桁の管理番号なら0000000、4桁なら0000のように、必要な桁数だけゼロを並べます。
この方法ではセルの実体は数値のままです。
そのためSUM関数で集計でき、数値として大小比較する処理にも向いています。
一方で、他システムへCSVを書き出したときに先頭ゼロが保証されるかは出力方法に左右されるため、データ連携では注意が必要です。
文字列書式の指定
セルを最初から文字列として受け付けたいときは、入力前に表示形式を文字列に設定します。
ホームタブの数値グループにある表示形式の一覧から文字列を選びます。
その後に00123と入力すると、先頭のゼロを落とさず文字列として保存できます。

すでに数値が入っているセルに文字列書式を適用しても、通常は数値そのものが自動で文字列へ変わるわけではありません。
既存データの型も変えたいときは、後述するTEXT関数や区切り位置を利用します。
文字列書式は入力前の設定が特に重要です。
コード、電話番号、口座番号など、計算しない数字を入力する列にあらかじめ設定しておくと入力ミスを防げます。
セルの左上に緑の三角が出る場合、Excelが数値を文字列として認識している合図です。
警告は必ずしもエラーではなく、用途に合っているならそのままで問題ありません。
アポストロフィによる直接入力
少数のセルだけを手早く文字列にしたいなら、入力値の先頭に半角のアポストロフィを付けます。
たとえば’00123と入力すると、シート上では00123と表示され、アポストロフィ自体は通常表示されません。
この操作は、コードを一件だけ修正したい場面で便利です。
ただし大量データへ手作業で使うと、入力漏れや表記ゆれの原因になるかもしれません。
【操作のポイント】表示形式でゼロ埋めをしても実体は数値のままです。検索条件や外部出力で文字列が必要かを確認してから選びましょう。
TEXT関数による数値の文字列化
続いては、数式を使って数値を文字列へ変換し、指定した書式で別セルに表示する方法を確認していきます。
| A列 数値 | B列 数式 | 結果 |
|---|---|---|
| 123 | =TEXT(A2,”00000″) | 00123 |
TEXT関数の基本構文
TEXT関数は、数値を指定した表示形式の文字列に変換する関数です。
基本の式は=TEXT(値,”表示形式”)です。
値には変換したい数値またはセル参照を指定し、表示形式は必ずダブルクォーテーションで囲みます。
B2セルに=TEXT(A2,”00000″)と入力すると、A2の123は00123という文字列になります。

数式を入力したら、B2セル右下のフィルハンドルを下へドラッグしてオートフィルを行います。
TEXT関数の結果は数値に見えても文字列です。
数値として再計算したい場合にはVALUE関数などで戻す必要があります。
数式の結果をほかの文字とつなげられる点も、TEXT関数の大きな特徴です。
日付と時刻の文字列変換
日付はExcel内部では連続した数値で管理されているため、TEXT関数で読みやすい文字列に整えられます。
たとえばA2に日付がある場合、=TEXT(A2,”yyyy年m月d日”)と入力すれば、2026年9月13日のような表記になります。
=TEXT(A2,”yyyy/mm/dd”)なら、年月日をスラッシュ区切りにした形式です。
時刻を含める場合は=TEXT(A2,”yyyy/mm/dd hh:mm”)のように指定します。
月を表すmと分を表すmは、年や日との組み合わせ、時刻の位置によってExcelが判断します。
日付をTEXT関数で変換すると、日付計算用の値ではなく文字列になります。
日数計算や並べ替えを続ける列では元の日付を残し、表示用の列でTEXT関数を使う設計が安心です。
文字列結合での活用
TEXT関数は、固定の文字と数値を組み合わせて管理番号やメッセージを作るときにも役立ちます。
たとえばA2に123があるとき、=”注文番号-“&TEXT(A2,”00000”)という式なら注文番号-00123が作成されます。
売上月と連番を結合するなら、=TEXT(B2,”yyyymm”)&”-“&TEXT(C2,”0000”)のように書けます。
アンパサンドは文字列を連結する記号です。
数値をそのまま連結すると必要なゼロが消えることがあるため、桁数が必要な項目はTEXT関数で整えてから結合しましょう。
【操作のポイント】TEXT関数をコピーする場合は、元データのA2のような参照先が行ごとに変わることを数式バーで確認します。
区切り位置による既存数値の文字列変換
続いては、すでに入力済みの数値を数式なしで文字列として確定する、区切り位置機能の使い方を確認していきます。
| A列 変換前 | 処理 | 変換後 |
|---|---|---|
| 123 | 区切り位置で文字列 | 123 |
区切り位置ウィザードの開始
区切り位置は、データを列に分ける機能ですが、変換先のデータ形式を文字列に指定する用途にも使えます。
まず文字列にしたい範囲を選択し、リボンのデータタブから区切り位置をクリックします。
区切り位置指定ウィザードが表示されたら、元のデータ形式は区切り文字によって区切られたデータを選んだまま次へ進めます。
実際には区切る必要がない一列の数字でも、この設定で問題ありません。
変換対象の列だけを選択してから操作することが重要です。
周囲の列まで含めると、意図しない形式変更が起こるおそれがあります。
列のデータ形式を文字列に指定
2画面目では区切り文字を指定しますが、一列の数値を変えるだけならチェックを変更せず次へ進みます。
3画面目の列のデータ形式で文字列を選択します。
画面下部の変換先には、通常は現在の列の先頭セルが表示されます。
既存の値をそのまま置き換えたいなら変換先を変更せず、完了をクリックします。
この処理は数式ではなくセルのデータ型を変えるため、変換後は元の数値計算に直接使えません。
表示だけではなく、実体を文字列として扱いたい商品コードや社員コードに適しています。
先頭ゼロを復元する注意点
すでに数値として保存された123を文字列へ変えても、消えた先頭ゼロが自動で00123に戻るわけではありません。
必要な桁数が決まっている場合は、先にTEXT関数で00123を作り、コピーして値として貼り付けてから文字列化する方法が確実です。
元データがCSVの場合は、Excelで直接開く前にインポート画面で列を文字列指定する方法も有効です。
先頭ゼロを守る処理は、Excelに読み込む前から始まります。
【操作のポイント】区切り位置の完了前に、変換先セルが正しい列になっているかを確認しましょう。上書きした値を元に戻すには直後の元に戻す操作が必要です。
値貼り付けと文字列変換の使い分け
続いては、TEXT関数の結果を固定値にし、数式を残さず文字列データとして利用する方法を確認していきます。
| 操作 | 数式 | 用途 |
|---|---|---|
| コピーして値貼り付け | 残さない | 結果を確定 |
TEXT関数の結果を値に置換
TEXT関数で作った文字列は、元の数値が変われば自動で更新されます。
提出用ファイルや外部システムへ渡す一覧では、更新されない確定値にしたいこともあります。
その場合は結果の範囲をコピーし、同じ場所または別の場所で形式を選択して貼り付けの値を実行します。
数式バーに=TEXT(A2,”00000″)ではなく00123だけが表示されれば、値への置換は完了です。
値貼り付け後は元の数値を変更しても結果は変わりません。
作業前に元データ列を残すか、ファイルを複製しておくと安心です。
数値に戻す必要があるケース
文字列に変換した番号を使って計算したい場合、SUM関数で合計が合わないことがあります。
数値へ戻すには、=VALUE(B2)を使う方法、セルに1を掛ける方法、エラー表示の変換機能を使う方法があります。
VALUE関数の基本式は=VALUE(文字列)です。
B2に00123という文字列がある場合、=VALUE(B2)の結果は数値の123になります。
ただし先頭ゼロが意味を持つコードを数値へ戻すと、ゼロは再び消えます。
計算対象と識別子を同じ列に混在させないことが、表を壊さないコツです。
CSVと他システムへの出力
CSVはセルの書式情報を保存しないため、表示形式で00123に見えていても、出力時には123になる場合があります。
CSVへ渡すコード列は、実体を文字列として作成してから出力することを検討しましょう。
受け取り側のソフトが数値として自動判定することもあるため、インポート仕様の確認も欠かせません。
Excel上の見た目とCSV内のデータ型は同じとは限りません。
【操作のポイント】外部連携用のファイルでは、保存後にCSVをメモ帳などで開き、ゼロや日付の形式が想定どおりか確認すると安全です。
数値と文字列を見分ける確認方法
続いては、セルが数値か文字列かを確認し、変換が必要なデータを判断する方法を確認していきます。
| 確認方法 | 数値 | 文字列 |
|---|---|---|
| ISNUMBER関数 | TRUE | FALSE |
配置と警告表示の確認
標準設定では、数値はセル内で右寄せ、文字列は左寄せで表示されます。
ただし配置を手動変更している場合もあるため、見た目だけで完全に判定することはできません。
文字列として保存された数字には、セル左上の緑色の三角と警告アイコンが出ることがあります。
この警告は数値に変換する候補をExcelが知らせているだけです。
商品番号や郵便番号なら、変換しない選択が正しい場合もあります。
ISTEXT関数とISNUMBER関数
判定を確実に行うには、ISTEXT関数とISNUMBER関数を使います。
=ISTEXT(A2)はA2が文字列ならTRUEを返します。
=ISNUMBER(A2)はA2が数値ならTRUEを返します。
データ件数が多い場合は、隣の列に判定式を入れてオートフィルし、FALSEやTRUEでフィルターをかけると確認しやすくなります。
空白セルでは両方ともFALSEになるため、空欄の有無は別途確認しましょう。
検索と一致判定の注意
数値の123と文字列の123は画面上で同じに見えても、関数や検索条件によって一致しないことがあります。
VLOOKUP関数やXLOOKUP関数で検索結果が出ないときは、検索値と検索範囲の型がそろっているか確認します。
コード列は元データから検索表まで文字列で統一するとトラブルを減らせます。
反対に金額、数量、日数などの計算対象は数値で統一するのが基本です。
【操作のポイント】一致しない原因を調べるときは、表示形式ではなくISTEXT関数とISNUMBER関数の結果を比べましょう。
まとめ エクセルで数値を文字列に変換する方法
エクセルで数値を文字列に変換する方法は、目的によって使い分けることが大切です。
画面上の桁数だけを整えるなら、ユーザー定義の表示形式で00000のように指定します。
先頭ゼロを含む文字列を数式で作るなら、=TEXT(A2,”00000″)が便利です。
既存セルの型を数式なしで文字列に変える場合は、データタブの区切り位置で列のデータ形式を文字列に指定します。
TEXT関数の結果を外部提出用に固定したいときは、コピー後に値貼り付けを行いましょう。
郵便番号、社員番号、商品コードのような識別子は文字列、金額や数量のような計算対象は数値として管理する考え方が基本です。
表示形式と実際のデータ型の違いを意識すれば、先頭ゼロの消失、検索の不一致、CSV出力時の表記崩れを防ぎやすくなります。