Excelでデータを入力している際、突然「1.23E+11」のような見慣れない表記に変わってしまい、困惑した経験はありませんか。
特に、電話番号や会員番号、商品コードなどの長い数字を入力すると、自動的に指数表記に変換されてしまうことがあります。
この「E+11」「E+12」といった表記は指数表記(科学的記数法)と呼ばれ、非常に大きな数値や小さな数値を簡潔に表現するための形式です。
例えば、「1.23E+11」は「1.23×10の11乗」を意味し、実際の数値は「123,000,000,000」(1230億)を表します。
しかし、実務では指数表記が不要な場面も多くあります。
電話番号「09012345678」を入力したつもりが「9.01235E+09」と表示されてしまうと、本来のデータが読み取れなくなります。
CSVファイルから大量のデータをインポートした際に、意図せず指数表記になってしまうケースも頻繁に発生します。
この問題を解決しないと、データの正確性が損なわれ、業務に支障をきたす可能性があります。
本記事では、Excelで指数表記が発生する原因から、表示形式の変更による対処法、文字列として扱う方法、CSVインポート時の注意点まで詳しく解説します。
データを正しく表示・管理して、正確なExcel作業を実現していきましょう。
ポイントは
・表示形式を「数値」または「文字列」に変更することで解決できる
・データ入力前にセルの書式を設定することが最も確実
・CSVインポート時は「テキストファイルウィザード」を活用する
です。
それでは詳しく見ていきましょう。
目次
指数表記(E+表示)が発生する仕組みと原因
それではまず、なぜExcelで指数表記が自動的に表示されるのか、その仕組みを確認していきます。
指数表記(科学的記数法)とは
指数表記は、非常に大きな数値や小さな数値を簡潔に表現するための表記方法です。
「1.23E+11」という表記は、「1.23×10^11」を意味し、1.23に10の11乗を掛けた数値を表します。
Eは「Exponent(指数)」の略で、その後ろの数字が10の何乗かを示しています。
E+11なら10の11乗、E-5なら10のマイナス5乗(0.00001)です。
具体的な例を見ると、「123,000,000,000」という数値は「1.23E+11」と表記されます。
小数点を左に移動させて1~10の範囲の数値にし、何桁移動したかを指数で表現します。
この場合、小数点を11桁左に移動したので「E+11」となります。
科学計算や統計処理では便利な表記ですが、日常的なデータ管理では読みにくく、混乱の原因になります。
指数表記の仕組み
元の数値
123,000,000,000
1230億
指数表記
1.23E+11
1.23×10の11乗
| 元の数値 | 指数表記 | 意味 |
|---|---|---|
| 1,230,000,000,000 | 1.23E+12 | 1.23×10の12乗 |
| 123,000,000,000 | 1.23E+11 | 1.23×10の11乗 |
| 12,300,000,000 | 1.23E+10 | 1.23×10の10乗 |
| 0.000000123 | 1.23E-07 | 1.23×10のマイナス7乗 |
Excelで自動的に指数表記になる条件
Excelでは、12桁以上の数値を入力すると、自動的に指数表記に変換されます。
例えば、「123456789012」(12桁)を入力すると、「1.23457E+11」のように表示されます。
これはExcelがセルの幅に収まらない大きな数値を、コンパクトに表示しようとする仕様です。
セルの表示形式が「標準」または「数値」の場合に、この自動変換が発生します。
また、11桁以下の数値でも、セルの幅が狭い場合に指数表記で表示されることがあります。
「1234567890」(10桁)でも、セルの幅が十分でないと「1.23E+09」のように表示される場合があります。
ただし、この場合はセルの幅を広げるだけで元の表記に戻ります。
12桁以上の場合は、セルを広げても指数表記のままになるため、書式設定の変更が必要です。
指数表記が問題になる具体例
実務で指数表記が問題になる代表的なケースは、電話番号、会員番号、商品コード、クレジットカード番号などの入力です。
電話番号「09012345678」(11桁)は通常は問題ありませんが、国際電話番号「81901234567890」(14桁)などは指数表記になってしまいます。
商品管理システムから出力されたバーコード番号(13桁のJANコードなど)も、Excelで開くと指数表記になります。
さらに深刻なのは、指数表記になった時点でデータの精度が失われる場合があることです。
Excelは15桁を超える数値の精度を保持できず、16桁目以降はすべて「0」に変換されます。
例えば、16桁のクレジットカード番号「1234567890123456」を入力すると、「1234567890123450」として保存され、末尾の「6」が「0」になってしまいます。
このため、長い数値を扱う場合は文字列として扱うことが必須です。
指数表記は、科学技術計算や統計分析では非常に有用な機能です。
天文学的な距離(光年)や、原子レベルの極小値(ナノメートル)など、桁数が非常に大きい数値や小さい数値を扱う際に、指数表記は欠かせません。
しかし、一般的なビジネスデータでは、ほとんどの場合で不要な機能です。
データの性質を理解し、必要に応じて表示形式を適切に設定することが重要です。
既に指数表記になってしまったデータの直し方
続いては、既に指数表記に変換されてしまったデータを元に戻す方法を確認していきます。
表示形式を「数値」に変更する方法
指数表記になっているセルの表示形式を変更することで、通常の数値表示に戻すことができます。
対象のセルまたは範囲を選択し、右クリックして「セルの書式設定」を開きます。
「表示形式」タブで「数値」を選択し、小数点以下の桁数を「0」に設定してOKをクリックします。
すると、「1.23E+11」が「123,000,000,000」のように通常の数値表示になります。
より簡単な方法として、ホームタブの「数値」グループにあるドロップダウンから「数値」を選択する方法もあります。
ただし、この方法で表示が戻るのは、元のデータが15桁以内の場合のみです。
15桁を超える数値は、既に精度が失われているため、完全には復元できません。
データを失わないためには、入力前に適切な書式設定を行うことが重要です。
表示形式を変更する手順
セルを選択
右クリック
「セルの書式設定」
を選択
「数値」を選択
小数点以下0桁
| 操作方法 | 手順 | 適用範囲 |
|---|---|---|
| セルの書式設定 | 右クリック → セルの書式設定 → 数値 | 選択セル全体 |
| ホームタブから | ホーム → 数値形式ドロップダウン → 数値 | 選択セル全体 |
| ショートカット | Ctrl+1 → 表示形式タブ → 数値 | 選択セル全体 |
文字列として再入力する方法
15桁を超える数値や、先頭に「0」がある電話番号などは、文字列として扱う必要があります。
既に指数表記になってしまい、データが失われている場合は、元のデータから再入力するしかありません。
再入力する際は、まず対象セルの表示形式を「文字列」に変更してから入力します。
セルを選択して右クリック、「セルの書式設定」で「文字列」を選択してOKをクリックします。
その後、数値を入力すれば、指数表記にならずにそのまま表示されます。
また、入力時にセルに「’」(シングルクォーテーション)を先頭に付けて入力する方法もあります。
「’09012345678」のように入力すると、自動的に文字列として認識され、シングルクォーテーションは表示されません。
15桁を超えるデータの取り扱い
Excelは数値として扱える精度が15桁までという制限があり、16桁以上の数値は必ず文字列として扱う必要があります。
クレジットカード番号(16桁)、マイナンバー(12桁)、長い会員番号などは、最初から文字列として入力・管理します。
一度でも数値として認識されると、16桁目以降が「0」に変換されてしまい、元に戻せません。
既に数値として保存されてしまったデータは、元のソースから再度取得する必要があります。
CSVファイルからのインポートであれば、後述する「テキストファイルウィザード」を使って文字列としてインポートし直します。
データベースから直接取得する場合は、クエリの段階で文字列型として指定することが重要です。
指数表記になったデータを元に戻す際の注意点として、表示形式を変更しただけでは根本的な解決にならない場合があります。
表示は戻っても、既に失われた精度(16桁目以降)は復元できません。
また、一度指数表記になったデータをコピーして他のセルに貼り付けると、再び指数表記になることがあります。
確実に防ぐには、データの入力前または取り込み前に、適切な書式設定を行うことが最も重要です。
指数表記を防ぐための事前設定方法
それでは、データ入力前に指数表記を防ぐための設定方法を確認していきます。
事前にセルの書式を「文字列」に設定
最も確実な方法は、データを入力する前にセルの表示形式を「文字列」に設定することです。
データ入力予定の列全体を選択し、右クリックして「セルの書式設定」を開きます。
「表示形式」タブで「文字列」を選択してOKをクリックします。
この状態で数値を入力すれば、どんなに桁数が多くても指数表記にならず、そのまま表示されます。
列全体を選択するには、列見出し(A、B、Cなど)をクリックします。
複数の列を同時に設定する場合は、Ctrlキーを押しながら複数の列見出しをクリックして選択します。
この事前設定により、電話番号や会員番号などを大量に入力する際も、すべて正しく表示されます。
後から書式を変更する手間が省け、データの精度も保たれます。
事前に文字列設定する手順
列見出しをクリック
して列全体を選択
セルの書式設定で
「文字列」を選択
データを入力
指数表記にならない
入力時に「’」を先頭に付ける方法
個別のセルに入力する場合、数値の先頭にシングルクォーテーション「’」を付けると文字列として認識されます。
例えば、「’09012345678」と入力すると、セルには「09012345678」と表示され、先頭の「0」も保持されます。
シングルクォーテーション自体は表示されず、セルをダブルクリックして編集モードにした際だけ見えます。
この方法は、1つずつ手動で入力する場合には便利ですが、大量のデータを扱う場合は事前の書式設定の方が効率的です。
また、コピー&ペーストでデータを貼り付ける場合、この方法は使えません。
あくまで手入力の際の補助的な方法として覚えておくと良いでしょう。
| 方法 | 操作 | メリット | デメリット |
|---|---|---|---|
| 事前に文字列設定 | 書式設定で列全体を文字列化 | 大量データに対応、確実 | 事前設定が必要 |
| ‘を先頭に付ける | 入力時に’09012345678と入力 | 個別対応が簡単 | 手入力のみ、手間がかかる |
| 表示形式を数値化 | 桁数を増やして数値表示 | 計算可能 | 15桁までの制限あり |
テンプレートとして保存する方法
定期的に同じ形式のデータを入力する場合は、書式設定済みのシートをテンプレートとして保存しておくと便利です。
必要な列の書式(文字列、数値、日付など)をあらかじめ設定したシートを作成します。
「ファイル」→「名前を付けて保存」で、ファイルの種類を「Excelテンプレート(*.xltx)」として保存します。
次回以降、このテンプレートから新規ファイルを作成すれば、書式設定済みの状態で作業を開始できます。
顧客リスト、在庫管理表、売上データなど、定型的なデータ入力作業では大幅な時間短縮になります。
テンプレートには列見出しや説明文、入力規則なども設定しておくと、さらに効率的です。
データの性質に応じて、適切な書式を事前に設定することは、Excelの基本的なベストプラクティスです。
電話番号や郵便番号は文字列、金額は通貨形式、日付は日付形式というように、データの意味に合わせた書式を設定します。
これにより、入力ミスの防止、表示の統一、後続処理の簡略化など、多くのメリットが得られます。
少しの手間をかけて事前設定することで、後々のトラブルを大幅に減らすことができます。
CSVファイルインポート時の指数表記対策
最後に、CSVファイルからデータをインポートする際の指数表記対策を確認していきます。
CSVを直接開くと指数表記になる理由
CSVファイルをExcelでダブルクリックして開くと、Excelが自動的にデータ型を判定して変換します。
この際、12桁以上の数値は指数表記に、16桁以上の数値は精度が失われてしまいます。
また、先頭が「0」の数値(郵便番号や電話番号など)は、「0」が削除されて「9012345678」のようになります。
CSVファイルを直接開く方法は、簡単ですが多くのデータ損失リスクがあります。
CSVファイルはテキスト形式であり、データ型の情報を持っていません。
Excelは見た目から「これは数値だろう」と判断して自動変換しますが、その判断が必ずしも正しいとは限りません。
特に、システムから出力されたCSVファイルには、長い数値が含まれていることが多く、注意が必要です。
テキストファイルウィザードを使う正しい方法
CSVファイルを正しくインポートするには、「テキストファイルウィザード」を使用します。
まず、空のExcelシートを開き、「データ」タブから「テキストまたはCSVから」を選択します(または「外部データの取り込み」→「テキストファイル」)。
CSVファイルを選択すると、テキストファイルウィザードまたはプレビュー画面が表示されます。
ウィザードの手順で、各列のデータ型を個別に指定できます。
特に重要なのは、電話番号や会員番号など、数値のように見えるが文字列として扱いたい列を「文字列」に設定することです。
列を選択して「列のデータ形式」で「文字列」を選択すれば、その列は文字列としてインポートされ、指数表記や先頭の「0」削除を防げます。
テキストファイルウィザードの使用手順
「データ」タブから
CSVを選択
ウィザードで
列を選択
データ形式を
「文字列」に指定
インポート完了
正しく表示
| インポート方法 | 結果 | データ損失リスク |
|---|---|---|
| CSVを直接開く | 自動判定で変換される | 高い(指数表記、精度損失) |
| テキストファイルウィザード | 列ごとに形式を指定できる | 低い(適切に設定すれば安全) |
| Power Queryで取り込み | 変換前にプレビュー可能 | 低い(詳細な制御が可能) |
Power Queryを活用した高度なインポート
Excel 2016以降では、Power Query(パワークエリ)を使ってより柔軟なデータインポートが可能です。
「データ」タブから「データの取得」→「ファイルから」→「テキストまたはCSVから」を選択します。
ファイルを選択すると、Power Queryエディタが開き、データのプレビューと変換オプションが表示されます。
各列のデータ型を個別に変更でき、変換前に結果をプレビューできるため、非常に安全です。
列見出しをクリックして「データ型の変更」から「テキスト」を選択すれば、その列が文字列として扱われます。
設定が完了したら「閉じて読み込む」をクリックすると、Excelシートにデータが展開されます。
Power Queryは一度設定すれば、同じCSVファイルを更新した際に自動的に同じ変換が適用されるため、定期的なデータ更新作業に最適です。
CSVファイルの扱いは、Excelでのデータ管理における最も一般的なトラブル源の1つです。
システムから出力されたデータ、他部署から受け取ったファイル、Webからダウンロードしたデータなど、様々な場面でCSVファイルを扱います。
正しいインポート方法を知っていれば、データの品質を保ちながら効率的に作業できます。
特に大量のデータを扱う場合や、定期的にデータを更新する場合は、テキストファイルウィザードやPower Queryの活用が必須です。
まとめ エクセルでe++12や+13や+14などを表示しない:文字列:csv)
Excelで指数表記を防ぎ、データを正しく表示する方法をまとめると
・既存データの修正:セルを選択して「セルの書式設定」から「数値」に変更、小数点以下の桁数を0に設定、ただし15桁を超えるデータは精度が失われているため復元不可
・事前の対策:データ入力前に列全体を選択して表示形式を「文字列」に設定、または入力時に先頭に「’」を付けて文字列として認識させる、テンプレート保存で繰り返し使用可能
・CSVインポート対策:CSVファイルを直接開かず、「データ」タブから「テキストファイルウィザード」を使用、各列のデータ型を個別に「文字列」に指定してインポート、Power Queryを使えばさらに柔軟な制御が可能
・重要な注意点:Excelは15桁を超える数値の精度を保持できず、16桁目以降は「0」に変換される、クレジットカード番号やマイナンバーなど長い数値は必ず文字列として扱う
指数表記(E+表示)は、Excelが大きな数値を扱う際の標準的な動作ですが、一般的なビジネスデータでは不要な場合がほとんどです。
電話番号、会員番号、商品コードなど、数値のように見えても計算に使わないデータは、文字列として扱うことが基本です。
データの入力前または取り込み前に適切な書式設定を行うことで、指数表記やデータ損失のトラブルを確実に防ぐことができます。
特にCSVファイルを扱う際は、安易に直接開かず、テキストファイルウィザードやPower Queryを活用してください。
少しの手間をかけることで、データの品質を保ち、後続の作業をスムーズに進められます。
正しいデータ管理で、正確で効率的なExcel作業を実現していきましょう!