CSV を Excel(.xlsx)に変換

文字化けせず、電話番号や郵便番号の先頭の 0 も、長い番号も、日付のような値も、CSV に書いてあるとおりに Excel に入れます。ファイルは送信しません。

あなたのファイルは安全です — すべてブラウザ内で処理。サーバーには一切送信しません。

CSV ファイルをここにドロップ

またはクリックして選択 — CSV・TSV(タブ区切り)・TXT

ファイルはブラウザ内で読み取られ、アップロードされません。


CSV を Excel に変換する手順(0 落ち・文字化けなし)

CSV をダブルクリックすると Excel で開きますが、書いてあるとおりには開きません。日本語版の Excel は CSV を Shift_JIS として読むので、Web サービスが書き出した UTF-8 の CSV は文字化けします。さらに、読みながら値を変えます。郵便番号や電話番号の先頭の 0 が消え、長い会員番号は「1.23457E+17」になって末尾の桁が失われ、「1-2」のような値は日付になります。先頭の 0 と長い数字については Microsoft も文書で説明していて、その列を文字列として取り込むよう案内しています。

このページは、それを自動でします。CSV をブラウザの中で読み、Excel が変えてしまう列を見つけて、その列を文字のまま入れた Excel のファイル(.xlsx)を作ります。ファイルはアップロードしません。

1

CSV を入れる

上の枠に .csv(タブ区切りの .tsv・.txt も)をドロップするか、クリックして選びます。文字コード(UTF-8・Shift_JIS など)と区切りは自動で判定します。

2

プレビューを確かめる

列ごとに「数値」か「文字のまま」かが付き、Excel が変えてしまう列は理由と一緒に一覧になります。プレビューの文字がおかしければ、文字コードや区切りを選び直します。

3

Excel で保存する

「Excel(.xlsx)で保存」を押すと、CSV と同じ名前の .xlsx ができます。Excel で開くと、1 行目の見出しは太字で固定され、絞り込みも付いています。

CSV → Excel 変換に顧客リストを入れた画面。UTF-8・カンマと判定され、緑の欄に文字のまま入れる列(先頭の 0 を残す顧客番号・郵便番号・電話番号、1.23E+17 にしない会員番号、日付に変えない登録日、式として計算しないメモ)が並び、プレビューでは購入金額の列だけが「数値」になっている。
画面 架空の顧客リストを入れたところ。Excel が変えてしまう列はすべて文字で入り、数値になるのは購入金額だけです。

数値にするのは、列の中がすべて普通の数字の列だけです。合計などの計算にそのまま使えます。それ以外は、CSV に書いてあるとおりの文字で入ります。

この変換の仕組み

Excel のファイル(.xlsx)は、XML のファイルをまとめた ZIP です。このページはその中身を自分で書くので、セルが数値か文字かは、選んだとおりになります。途中で変換されることはありません。すべてブラウザの中で行います。

CSV の読み方
文字コードは、このサイトの「文字化けを直す」と同じやり方で中身から判定します(BOM があればそれで決めます)。引用符(")で囲まれた欄には、カンマ・引用符・改行が入っていても正しく読みます。区切りは、先頭の数行を同じ数の欄に分けられるもの(カンマ・タブ・セミコロン)を選びます。
Excel が変えてしまう値の見分け方
先頭が 0 の数字(00123、090-…)、12 桁以上の数字、Excel が日付や時刻と読む値(1-2、2026/10/01、10:30 など)、=・+・-・@ で始まる数字でない値です。こうした値やほかの文字が 1 つでもある列は、書式を「文字列」にした文字のセルで入れるので、Excel でセルを直しても文字のままです。
Excel のファイルの作り方
シートは 1 枚で、名前はファイルの名前です。列の幅は中身に合わせます。ZIP にまとめるのは JSZip で、このサイトの ZIP でのまとめて保存にも使っている部品です。 JSZip のライセンス(MIT)

対応していない範囲

1 つの CSV から 1 枚のシートを作ります。式・色・セルの結合は CSV に無いので、作りません。50 MB を超えるファイルと、セルが 300 万個を超えるファイルは扱いません。区切りがセミコロン(;)のファイルでは、小数点や 3 桁区切りの書き方が地域で違うので、整数だけを数値にします。

よくある質問

ファイルはアップロードされますか?
されません。CSV はブラウザの中で動くプログラムが読み、.xlsx もその場で作ります。このサイトにもどこにも送りません。
CSV を Excel で開くと、なぜ先頭の 0 が消えるのですか?
Excel は CSV を開くとき、数字に見えるものを数値に変えます。数値には先頭の 0 がないので消えます。12 桁以上の数字は「1.23E+17」のように表示し、有効桁も 15 桁までしか持ちません。Microsoft の「先頭のゼロおよび大きい数値の保持」に説明があります。一度消えた 0 は、あとからセルの書式を変えても戻りません。
Excel の機能だけでもできませんか?
できます。Microsoft の手順では、「データ」タブ →「テキスト/CSV から」で読み込むとき、クエリ エディター(「データの変換」)を開き、変わってしまう列ごとにデータ型を「テキスト」にして「現在を置換」を選んでから読み込みます。新しい Excel なら、「ファイル」→「オプション」→「データ」の「自動データ変換」で、先頭の 0 を消す変換を止めることもできます。このページは、変わってしまう列を見分けて、同じことを一度にします。
どの列が数値になりますか?
列の中の値(空の欄と「-」だけの欄を除く)がすべて、Excel が書いてあるとおりに表示する普通の数字(先頭の 0 なし、小数点の後ろの 0 なし、11 桁まで)のときだけ数値にします。「1,980」のような 3 桁区切りの金額も数値にし、そのセルは区切りも付けて表示します。区切りがセミコロン(;)のファイルでは、整数だけを数値にします。それ以外の列と見出しは文字で入れます。
大きさの上限はありますか?
ファイルは 50 MB まで、セルは 300 万個までです。Excel の 1 枚のシートには 1,048,576 行・16,384 列まで、1 つのセルには 32,767 文字までしか入らないので、それを超えるセルはそこで切り、そう知らせます。