CSVGuide2026-10-12

Excelで16桁以上のIDを開くと末尾が変わる。数値にしないのが先

約5分で読めます

こんな人向け注文ID・商品コード・会員番号など16桁以上の識別子をCSVで扱う人
難易度入門

Excelが16桁以上の数値文字列を15桁精度で扱い、末尾を変えることがある問題を、テキスト型として取り込む方法で防ぎます。

目次を開く

注文IDや決済IDのような16桁以上の数字をExcelで開くと、末尾が0へ変わったり科学表記になったりすることがあります。MicrosoftはExcelの数値精度が15桁までで、長い数値を変換する挙動を案内しています。

IDは数値ではなく文字列

123456789012345678 は数字だけで構成されていても、加算や平均を取らないなら識別子です。最初からTextとして扱います。

Microsoft 365 / Excel 2024ではAutomatic Data Conversionsで長い数値を変換する設定を制御できます。

Text/CSVから読み込む

Excelの「データ → テキスト/CSVから」でファイルを読み込み、対象列をText型へ指定します。すでに15桁以降が失われたセルへ表示形式を変えても、元の数字は復元できません。

18桁IDが数値変換で変わる例と文字列保持の比較図

原本を別に残す

Excelで編集する前のCSVを残し、保存後ファイルとID列を比較します。大量データなら代表行だけでなく、桁数が長い値を抽出して検査します。

CSVの構造チェックはCSV Preflightで前段に置けます。

本番投入前の最終チェック

16桁以上の値を抽出し、取り込み前後と再書き出し後の3点で比較します。1件だけでなく、桁数の異なる複数サンプルを使います。

  • 長いIDをTextとして扱った
  • 元CSVを保存した
  • 15桁超の値を抽出した
  • 再書き出しCSVを比較した
  • 末尾まで一致した

一度失われた下位桁は表示形式では戻りません。変換前に止めるのが最短です。

復旧は元CSVからやり直す

すでにExcel上で末尾が0へ置き換わった値は、セルの表示形式をTextへ変えても元の桁へ戻りません。別系統に残した原本CSV、API出力、データベースなどの正本から値を取り直します。復旧後は16桁以上のIDを抽出して前後比較し、1件でも不一致があれば全件投入を止めます。壊れた値から推測で復元しないことが重要です。

NEXT

次に読む。

CSV / Guide

CSVを開いたら全部A列。Excelで最初に見るのは「区切り文字」

約5分

CSVをExcelで開いたら、全データがA列に固まった。ファイル破損を疑う前に、区切り文字とExcelの取り込み方を確認する。元データを壊さずに列を戻す手順を整理します。

CSV / Guide

ExcelがCSVの値を勝手に日付へ変える。10-10やJAN1を文字列のまま守る

約5分

CSVをExcelで開いたら10-10やJAN1が日付へ変わった。元データを書き換える前に、自動データ変換とテキスト/CSV取り込みを使って文字列のまま確認する手順を整理します。

CSV / Guide

Excelが「123E5」を指数へ変える。商品コードのEは計算記号じゃない

約5分

ExcelがCSV内の123E5のような文字列を科学表記へ自動変換する問題を、Automatic Data Conversionsとテキスト取り込みで防ぐ方法です。

SHARE
XBLUESKYFACEBOOKLINE