30秒で診断する:ファイルは壊れていない、Excelの推測が間違っただけ
日付が変わったときに最初に確かめるべきことは、データが壊れたのか、それとも読み方が間違っただけなのかです。この2つでは対処法がまったく違い、間違った対処をすると、表示の問題が本物のデータ損失に変わってしまうことがあります。30秒でできる検査を紹介します。同じファイルをプレーンテキストエディターで開いてください。Windowsならメモ帳、Macならプレーンテキストモードのテキストエディットです。そこで日付が元のとおりに表示されるなら、たとえば03/04/2026、2026-03-04、1-2のように表示されるなら、データは無事で、Excelの読み方だけが間違っています。ディスク上のファイルには正しい文字が残っており、Excelが開くときに意味を変えてしまったのです。これが最も多いケースであり、このガイドのすべての直し方はここから出発します。
2つ目の手がかりは、どの値が変わったかです。普通の単語や短い数字、句読点はそのままで、日付だけが移動したり、入れ替わったり、書式が変わったり、1-2やMARCH1のような短いコードが日付になってしまったなら、それは型の推測です。区切り文字の問題でも破損でもありません。区切り文字の問題なら行全体が1列にまとまります。破損なら全体が文字化けしたり行が欠けたりします。型の推測は狙いすましたように働きます。日付に見える値だけを変え、それ以外には一切手を出しません。03/04/2026が3月4日のはずなのに4月3日になり、1-2のようなコードが1月2日になったなら、Excelがテキストを日付として扱った証拠です。原因と直し方の両方がここから分かります。
3つ目の確認で、救済がまだ可能かどうかが決まります。使うのはセルではなく数式バーです。変わってしまった日付のセルをクリックして、数式バーを読んでください。数式バーに46085のようなシリアル値や、ファイルとは違う並びの日付が表示されるなら、そのセルはもう元の文字ではなくExcelの日付値を持っています。数式バーに元の文字が表示されるなら、表示形式だけが変わったのであり、セルの書式を直せば済みます。確認が済むまでは元のファイルに手を付けず、コピーで作業し、変換されたファイルを良いファイルに上書き保存してはいけません。
なぜExcelは推測するのか:CSVには型情報がない
この問題が繰り返し起きる理由を理解するには、CSV形式についての1つの事実が必要です。CSVファイルはプレーンテキストであり、どの値が日付で、どれが数値で、どれがテキストかを示すヘッダーがありません。表計算ファイルはセルの型を一緒に持ちますが、CSVファイルは型も書式も持ちません。あるのは文字とカンマと改行だけです。プログラムがCSVを開くときは、プログラム自身が各値の意味を決めなければならず、プログラムごとに判断が違います。PythonのcsvモジュールやGoogleスプレッドシートは、指示がない限りCSVの値をテキストのまま保つため、同じファイルでも正しく見えます。一方、ExcelでCSVファイルをダブルクリックすると推測が働きます。日付に見えるものは日付に、数値に見えるものは数値になり、その推測が正しかったかどうかは確認されません。
その推測こそが日付の問題全体です。なぜなら日付の書き方は世界共通ではないからです。アメリカは月を先に書き、03/04/2026は3月4日を表します。ヨーロッパの多くは日を先に書き、同じ03/04/2026は4月3日を表します。ISO 8601は年を先に書く2026-03-04という書き方で、あいまいさがありません。しかし、実際に書き出されるファイルの多くはこの形式を使っていません。CSVファイルはどの慣習に従っているかを示さないため、Excelはファイルを開くマシンの慣習に頼ります。同じファイルをニューヨークとベルリンで開けば、1つのファイルから2種類の表計算結果が生まれ、どちらのマシンも選択が行われたことを警告しません。同じ理屈で、2つ目の被害も説明できます。日付ではない値、たとえば範囲を示す1-2、比率を示す5/6、コードを示すMARCH1も、日付のパターンに十分似ているためExcelが変換してしまうのです。ファイルは変わっていません。読み手が文字の意味を変えたのです。
この問題がJSONから変換したファイルで頻繁に現れる理由もここにあります。JSONは型を区別します。文字列としての2026-03-04と文字列としての03/04/2026は別の文字列であり、JSONからCSVへの変換ではそれぞれが書かれたとおりに書き出されます。変換は正しいのです。開き方が合っていないのです。このページの変換ツールもその例です。2026-03-04、03/04/2026、2026-03-04T10:30:00Zという日付を含むサンプルで実行したところ、すべての値がCSVにバイト単位でそのまま出力され、書式の変更も数字の変更もありませんでした。不一致が変換の段階ではなく開く段階にあると分かれば、直す場所も分かります。次のセクションで示すように、Excelが推測する前の取り込みの段階で直すのです。
推測が日付を変える3つのパターンと見分け方
型の推測は日付を3つの異なる方法で変えます。そして見分けることが重要です。なぜなら、直せるものと直せないものがあるからです。1つ目は日と月の入れ替わりです。03/04/2026が3月4日ではなく4月3日になったり、その逆になったりして、しかも何の警告もありません。見た目には何も壊れていません。列はもっともらしい日付で埋まり、1つ1つは有効な日付であり、日付の4分の1ほどが、エラーメッセージが出ることもなく間違っています。入れ替わりが起きるのは日が12以下の場合だけです。なぜなら、その場合にだけ日が月として通用するからです。ここが危険なところです。入れ替わらなかった行が問題を教えてくれる一方で、入れ替わった行は問題を隠してしまうのです。
2つ目は列の混在であり、これこそ入れ替わりが起きた証拠です。アメリカ式のファイルを日先行のマシンで開くと、日が13以上の行は月にはなり得ないため、Excelはそのセルをテキストのまま残し、残りのセルだけを日付に変換します。すると1つの列に2種類のセルが混ざります。毎月1日から12日までの分は本物の日付、それ以外はテキストです。この列を並べ替えるとテキストの行が端に寄り、日付での絞り込みではテキストの行が見逃され、列をもとにしたグラフや計算ではテキストの行が静かに除外されます。日付列の並べ替えがおかしい、あるいは一部の行だけ日付として扱われないと感じたら、データを責める前にこの分裂を疑ってください。
3つ目は、日付ではないものが日付に変換されるパターンです。範囲の1-2が1月2日に、比率の5/6が5月6日に、コードのMARCH1が3月1日になります。内部では、Excelは日付をシリアル値として保存します。これは1899年12月30日からの日数であり、2026年3月4日は46085、2026年4月3日は46115として保存されます。値が一度シリアルになってしまえば、元の文字はそのブックから消えます。その後でセルの書式をテキストに変えても元には戻りません。表示されるのは2026-03-04ではなく、テキストとして表示されたシリアル値46085です。これが、表示の問題とデータ損失を分ける検査です。数式バーにシリアル値が表示されるなら、そのコピーからは文字が消えており、助けになるのは後の救済のセクションだけです。
CSV file (from this page converter, verified):
order,shipDate,dueDate,window,code
A-101,2026-03-04,03/04/2026,1-2,MARCH1
A-102,2026-04-03,04/03/2026,12-3,SEPT2
A-103,2026-03-04T10:30:00Z,3/4/2026,5/6,OCT4
What Excel shows on double-click, US machine (month first):
shipDate -> real dates, displayed 3/4/2026, 4/3/2026, 3/4/2026
window -> 1-2 becomes Jan-02, 12-3 stays text, 5/6 becomes Jun-05
code -> MARCH1 becomes Mar-01, SEPT2 becomes Sep-02, OCT4 becomes Oct-04
What Excel shows on double-click, day-first machine:
dueDate 03/04/2026 -> April 3 (was March 4); 04/03/2026 -> March 4 (was April 3)
dueDate 3/4/2026 -> April 3 (was March 4); rows with day above 12 stay textこの表が証明していることに注目してください。ファイルから何も欠けておらず、Excelの表示だけがすべて変わっているのです。だからこそ取り込みによる直し方がこれほど完全なのです。読み込み前に列をテキストだとExcelに伝えれば、変換なしに同じ文字がそのまま保存され、すべての日付が編集も再入力もなしに元の姿に戻ります。ファイルがこのパターンに当てはまるなら、誤解を解くセクションは飛ばして、取り込みによる直し方に直接進んでください。ファイルは壊れていません。読み方が間違っただけです。
効かない4つの対処法と、なぜ試され続けるのか
効果のある直し方に入る前に、効かない4つの対処法を片付けておく価値があります。時間を無駄にするだけでなく、そのうち1つは事態を悪化させるからです。1つ目は、ファイルを開いた後で列の書式を変えることです。表示形式を変えれば保存された日付の見え方は変わりますが、保存されたのがどの日付かは変わりません。ファイルが3月4日を意味していたのにExcelが4月3日として保存したなら、書式を変えても4月3日が別の見た目になるだけで、間違った日付は間違ったままです。書式は表示です。保存されたシリアル値がデータであり、表示の変更はデータに一切触れません。
2つ目は、取り込み後にパソコンの地域設定を変えることです。地域設定が効くのはExcelがファイルを読み込む瞬間だけであり、その後ではありません。シリアル値が保存された後でマシンを月先行から日先行に切り替えても、保存されたシリアル値の表示が変わるだけで、書式変更とまったく同じです。ファイルを再読み込みすることも、入れ替わりを解消することもありません。3つ目は、CSVの中で値を引用符で囲むことです。多くの解説では、03/04/2026を引用符で囲めば日付が守られると言いますが、Excelではそうなりません。Excelは取り込み時に引用符を取り除き、中の値に同じ日付の推測を適用するため、引用符付きの日付は引用符なしの日付とまったく同じように変換されます。引用符が制御するのは、値の中のカンマの扱いであり、Excelが値をどの型にするかではありません。
4つ目は、変換された日付に対して検索と置換を行い、月と日を手作業や数式で列全体にわたって戻すことです。これはすべての行が入れ替わった場合にしか通用しませんが、実際にはそうはなりません。日が12を超える行は入れ替わらずテキストのまま残るため、一律の入れ替えは、間違っていた行を直す一方で、正しかった行を壊してしまいます。検索と置換は自分で入力した値に使い、ファイルについては取り込みによる直し方を使ってください。効かない直し方を知っておくことで、最も多い罠を避けられます。表示が正しく見えるから問題が解決したと思い込みながら、保存された値は今も間違ったままという罠です。
直し方1:ファイルを取り込み、日付列をテキストに設定する
まず試すべき直し方がこれです。パソコンの設定もファイルも変えず、区切り文字や文字コードが何であれ、どんなCSVにも使えるからです。ファイルをダブルクリックするのではなく、先にExcelを開き、ガイド付きの取り込みでファイルを取り込み、各列の型を自分で選びます。取り込みダイアログのプレビューを見れば、選択が正しいかどうかがすぐに分かります。日付は読み込む前に、ファイルと同じ文字でプレビューにそのまま表示されます。プレビューでまだ日付が変換されて見えるなら、まだ何も変更されていないので、読み込む前に列の型を調整できます。
- Excelで空白のブックを開きます。CSVファイルをダブルクリックしてはいけません。
- Data、From Text/CSVの順に進み、ファイルを選択します。
- プレビューダイアログで区切り文字とファイルの文字コードを確認したら、LoadではなくTransform Dataをクリックして、Power Queryエディターを開きます。
- Power Queryエディターで、自動的に作られたChanged Typeのステップを見つけて削除します。このステップこそ、日付の推測が行われる場所です。
- すべての日付列と、日付に見えるコード列をすべて選択し、データ型をテキストに設定します。
- Close and Loadをクリックします。日付は文字が1つも変わらないテキストとして届きます。
テキストとしての日付には、理解しておくべき正直なトレードオフが1つあります。テキストの日付は本物のExcelの日付ではありません。本物の日付と一緒に時系列で並べ替えることはできず、意図的に変換するまでは日付の数式にも無視されます。しかし、元の文字を残すことが目的なら、これは欠点ではなく利点です。元の慣習が分かった後で、次の直し方を使って意図的に変換してください。CSVファイルを開くときの既定の方法として取り込みを使うようにしましょう。救済の手段としてだけでなく、普段からです。ダブルクリックは、区切り文字と文字コードとすべての列の型についての推測です。取り込みは、その3つすべてについての選択であり、かかる時間は1分ほど長いだけです。Macでも同じ手順が使えます。Data、From Textの順に進み、取り込みの段階で列の型を設定します。
直し方2:元のロケールを指定して取り込み、意図した変換にする
テキストではなく本物のExcelの日付が必要な場合でも、取り込みの手順は使えます。ただし1つ手順が増えます。元のファイルがどの慣習に従っているかをExcelに伝えるのです。Power Queryエディターで日付列を右クリックし、Change Type、Using Localeの順に選びます。データ型として日付を選び、元のファイルに合ったロケールを選びます。月先行のファイルならEnglish (United States)、ヨーロッパ式の書き出しならそれに合った日先行のロケールです。するとPower Queryは1つの慣習のもとで全行を変換するため、列は均一になります。すべて本物の日付になり、テキストのまま残る行も、静かな入れ替わりもありません。
読み込む前に、入れ替わりを教えてくれる行を使って結果を確認してください。日が12より大きいレコードを探します。正しいロケールなら日付として読み込まれ、間違ったロケールならテキストのまま残るか失敗します。次に、日と月がどちらも12以下のレコードを探し、元の意味どおりに読めているか確認します。どちらかの確認に失敗したら、ロケールの選択が間違っています。しかし、まだ何も読み込まれていないので何も失っていません。ロケールを変えてもう一度確認してください。この2レコードの確認は10秒で済み、さもなければ何か月も隠れ続ける間違いを防ぎます。
直し方3:再インポートなしに、すでに取り込まれた日付を直す
元のファイルがなくなり、ブックだけが残っている場合には、再インポートは選択肢になりません。何を直せるかは、何が残っているかで決まります。取り込まれた日付がまだテキストのままなら、Excelが認識しなかったということです。Text to Columnsツールで直せます。列を選択し、Data、Text to Columnsの順に進み、Nextを2回クリックし、ステップ3で日付を選び、元のファイルに合った形式、月先行ならMDY、日先行ならDMYを選びます。Excelはその1つの慣習のもとで列全体を変換します。これこそ、ダブルクリックでは決して得られなかった制御です。
日付が間違ったシリアル値として保存されてしまった場合、すべての行が入れ替わっているなら、数式で戻せます。作業用の列に、DATE(YEAR(A2),DAY(A2),MONTH(A2))と入力すれば、日と月を交換した日付が各行について再構築され、結果をコピーして値として貼り付ければ修復が固定されます。しかし、これは列のすべての行が入れ替わった場合、つまり元の日がすべて12以下だった場合にしか通用しません。列が混在している場合、日付とテキストの残りが混ざっている場合は、2つのグループを別々に直してください。まずText to Columnsでテキストの行を変換し、次に日付の行にそもそも入れ替えが必要かどうかを確認します。混在した列に一律の数式を適用すると、正しかった行を壊します。そして、元の文字が消え、どの行が入れ替わったか分からない場合は、そこで止まってください。ファイルにもう残っていない情報を数式で取り戻すことはできず、正直な方法は救済のセクションだけです。
直し方4:自動変換をオフにし、元データでISO形式の日付を書く
CSVファイルを毎日開くなら、そのたびに取り込むのは面倒になります。長く使える直し方は、Excelが既定で何を推測するかを変えることです。最近のExcel、Microsoft 365やExcel 2024とそのMac版には、自動データ変換という設定があります。File、Options、Dataの順に進むと見つかります。Excelが独自に適用する変換の一覧があり、その中には日付に見える文字と数字の文字列を変換するものも含まれます。不要な変換のチェックを外せば、今後のファイル開示では、ダブルクリックでの開示も含め、Excelはそれらの値をテキストのまま残します。
この設定に頼る前に、2つの注意点があります。1つ目は、将来の動作だけが変わることです。すでに変換されたセルは直らず、シリアル値に置き換えられた文字も戻りません。先週開いたファイルは、ブックの中に変換後の値を持ったままであり、日付を取り戻すには元のファイルからの新しい取り込みだけが方法です。2つ目は、この設定はファイルではなく自分のマシンに属することです。同じファイルを、既定の設定のままのマシンで開く同僚は、やはり変換された日付を見ることになります。送り出したファイル自体には保護が付きません。この設定は自分のマシン用の便利な機能として扱い、共有するファイルについては取り込みによる直し方を確実な方法として扱ってください。
CSVを作る側なら、最も強い直し方は元データにあります。日付をISO 8601形式、つまり年を先に書く2026-03-04で書くことです。年を先に書く日付には、どの読み手にとっても日と月のあいまいさがありません。なぜなら年が最初に来て、月は常に真ん中の数字だからです。これでExcelが完全に間違えなくなるわけではないので、取り込みの確認はそれでも必要ですが、スラッシュやハイフンによる日付が招く入れ替わりエラーという種類全体を取り除けます。JSONでは、日付をISO形式の文字列として保持し、地域別の書式の文字列にしないことを意味します。文字列としての2026-03-04は文字2026-03-04に変換されますが、03/04/2026のような地域別の文字列は、そのあいまいさを触れるすべてのファイルに持ち込みます。これは変換ツールの設定ではなく元データの決定です。なぜなら、元データが示さなかった慣習を変換ツールが宣言することはできないからです。
変換済みで保存してしまったファイルを救う方法
ここまでのすべての直し方は、ディスク上のファイルが今も正しく、間違っているのはExcelの表示だけだという前提でした。しかし、変換後のバージョンがすでに保存されてしまっている場合もあります。そのときに元の日付を取り戻せるかどうかは、保存が正確に何をしたかで決まります。区別すべきケースが2つあります。1つ目のケースでは、ディスク上のファイルには今も元の文字が残っており、間違っているのはブックの表示だけです。これはテキストエディターによる検査で分かるケースです。エディターに元の日付が表示されるなら、何も失われておらず、直し方1で表示を直せます。2つ目のケースでは、ディスク上のファイル自体が変換後の値を含むようになっています。誰かがExcelでファイルを開き、書式が変わった日付を見て、CSVに保存し直し、変換後の値がファイルに書き込まれたからです。
2つ目のケースは、狭い条件でのみ回復できます。すべての日付が1つの慣習のもとで入れ替わり、元の日がすべて12以下だったなら、直し方3のDATE数式で戻せます。なぜなら、損傷が均一な交換だからです。唯一のバージョンではなくコピーで作業し、Excelで再び開く前に既知のレコードと照らして結果を確認してください。損傷が混在している場合、一部の行が入れ替わり、一部がテキストのまま残り、一部のコードが日付になった場合、元の文字はそのコピーからは失われており、数式では解きほぐせません。なぜなら、シリアル値にはどの慣習で作られたかが記録されていないからです。その場合はコピーの修復をやめ、元データからファイルを再生成してください。データベースやツール、元のJSONから再書き出しし、今度は直し方1の方法で開きます。そして何をするにしても、再生成したファイルの確認が済むまでは損傷したコピーを残しておいてください。再生成品を確認する前に唯一のコピーを削除することが、回復可能な問題を失われたデータセットに変えてしまうのです。
このページの変換ツールで作ったファイルの場合
このページの変換ツールは、まさにこのガイドが扱う種類のファイルを作ります。そのため、その動作をはっきり述べておく価値があります。ダウンロードされるファイルは、JSONが持つとおりに日付を正確に保持します。これは推測ではなく、実際のコードで検証されました。変換エンジンは、ISO形式の日付2026-03-04、スラッシュの日付03/04/2026と04/03/2026、タイムスタンプ2026-03-04T10:30:00Z、そして日付に見えるコード1-2、12-3、5/6、MARCH1、SEPT2、OCT4を含む3行のサンプルで実行され、すべての値をCSVにバイト単位でそのまま出力しました。書式の変更も変換も数字の変更もありません。ですから、変換したファイルがExcelで変わって見えるなら、変換は何も壊していません。ファイルは正しく、Excelがダブルクリックで型を推測したのです。
変換したファイルについては、2つのすっきりした選択肢があります。1つ目は取り込みの手順です。ダウンロードしたファイルをData、From Text/CSVで開き、Transform Dataをクリックし、すべての日付列をテキストに設定して文字を残すか、本物の日付が必要なら元のロケールに合った日付型に設定して読み込みます。日付は正しく読まれ、ファイル自体には何も変更していないため、ほかのすべてのツールに対しても有効なままです。2つ目は、直し方4の自動変換の設定で、自分のマシン用です。型の推測による表示の問題を直すためにデータを再変換してはいけません。変換した出力を表計算に貼り付けて保存し直してもいけません。その往復は、まさにこのガイドと関連ガイドが防ごうとしている区切り文字、文字コード、型の不一致を持ち込んでしまうからです。データを直すのではなく、開き方を直してください。
もう1つ、変換ツールについての重要な点があります。変換ツールではダウンロード前に区切り文字を選べますが、その選択は型の推測とは独立しています。ファイルは、区切り文字が正しくても日付が入れ替わることがあり、日付が正しくても区切り文字が間違うことがあり、両方とも間違うこともあります。変換したファイルが1列で開き、日付もおかしく見えるなら、同じ取り込みで両方の設定を直してください。変換時に選んだ区切り文字を選び、日付列をテキストか、元のロケールに合った日付型に設定します。1列で開く問題の半分は下の関連ガイドの区切り文字の記事で詳しく扱い、文字の半分は文字コードのガイド、数字の半分は先頭の0のガイドで扱っています。3つとも下の関連ガイドにリンクしています。
予防チェックリスト:誰も直さなくて済む日付の書き方
型の推測は、書き手と読み手の不一致です。そのため予防とは、書き手が値の意味を、読み手が尊重する形で宣言することです。CSVを作るときにこのチェックリストを実行すれば、次にファイルを開く人はこのガイドを必要としません。1つ目に、元データで日付をISO 8601形式、つまり年を先に書く形式で書きます。データに日付が含まれるなら、元のシステムでISO形式の文字列として保存してください。地域別の書式の日付は、そのあいまいさをすべての書き出しに持ち込むからです。2つ目に、読み手がExcelなら、ファイルの開き方を伝えます。日付列をテキストに設定して取り込むか、元のロケールに合った日付型に設定して取り込むという1行の注記をファイルに添えるだけで、問題全体を防げます。添えるコストはゼロです。
3つ目に、救済したファイルをテキストエディターで確認するまでは、元のファイルに上書き保存してはいけません。Excelからの保存は、Excel独自の既定値で型と区切り文字と文字コードを書き換えます。それが次の読み手のために不一致を再び持ち込んだり、表示の問題を本物のデータ損失に変えたりすることがあります。4つ目に、ファイルを受け取ったとき、何かおかしいと感じたらまずテキストエディターで開き、表計算に上書き保存させる前に日付を確認します。そして5つ目に、元データを残します。CSVはデータそのものではなく、平らにしたスナップショットです。そのため、救済がうまくいかなくても、元データがあればきれいに再書き出しできます。日付の怖い話のほとんどは、損傷したCSVが唯一のコピーだったと遅れて気づくことで終わります。自分のファイルでそうならないようにしてください。
関連ガイド
よくある質問
CSVの日付がExcelで変わるのはなぜですか?
CSVファイルにデータ型の情報がないため、Excelがファイルを開くときにパソコンの地域設定を使って各値の意味を推測するからです。03/04/2026という日付は、アメリカの月先行の慣習では3月4日、日先行の慣習では4月3日になり、Excelは確認なしにどちらかを選びます。ファイル自体には今も元の文字が残っています。Data、From Text/CSVでファイルを取り込み、読み込む前に日付列をテキストに設定するか、元のロケールに合った日付型に設定してください。
CSVの日付で日と月が入れ替わるのはなぜですか?
ファイルがどの慣習に従っているかを示していないため、Excelがパソコンの慣習を使うからです。アメリカの月先行のファイルを日先行のマシンで開くと、日が12以下の日付はすべて入れ替わり、日が12を超える行はテキストのまま残って、列が混在します。Data、From Text/CSVで取り込み、Power QueryでChange Type、Using Localeの順に選び、元のファイルに合ったロケールを選んでください。
セルの書式を変えればCSVの日付は直りますか?
表示だけが変わった場合に限ります。Excelが日付をシリアル値として保存したなら、書式を変えても同じ保存された日付が別の見た目になるだけで、入れ替わった日付は入れ替わったままです。セルをクリックして数式バーを読んでください。46085のようなシリアル値や、ファイルとは違う並びの日付が表示されるなら、保存された値が変わっており、元のファイルからの新しい取り込みだけが直し方です。
CSVで日付を引用符で囲めばExcelの変換を防げますか?
いいえ、防げません。Excelは取り込み時に引用符を取り除き、中の値に同じ日付の推測を適用するため、03/04/2026を引用符で囲んでも、引用符なしの場合とまったく同じように変換されます。引用符が制御するのは、値の中のカンマの扱いであり、Excelが値をどの型にするかではありません。変換を防げるのは、取り込み時に列をテキストに設定するか、元のロケールに合った日付型に設定することだけです。
CSVの日付列で一部の行だけテキストのままになるのはなぜですか?
日が12以下の日付だけが、もう一方の慣習のもとで月として通用するからです。日が12を超える行は月にはなり得ないため、Excelはそれらをテキストのまま残し、残りは変換します。この混在した列こそ、日と月の入れ替わりが起きた証拠です。ファイルを再取り込みして列の型を明示的に設定すれば、列全体が均一に変換されます。
Excelで変わらないようにするには、CSVにどんな日付形式を使えばいいですか?
ISO 8601、つまり年を先に書く2026-03-04です。年を先に書く日付には日と月のあいまいさがありません。なぜなら月は常に真ん中の数字だからです。これで入れ替わりエラーという種類全体がなくなります。ただし、Excelはダブルクリックでは今も型を推測するため、取り込みの確認はそれでも必要です。地域をまたいで共有するファイルでは、スラッシュやハイフンによる地域別の形式は避けてください。
このページのJSONからCSVへの変換ツールは日付を変えますか?
いいえ、変えません。変換ツールは、JSONが持つとおりに日付文字列を書き出します。ISO形式の日付、スラッシュの日付、タイムスタンプ、日付に見えるコードは、検証済みのテスト実行でバイト単位でそのまま出力されました。変換したファイルがExcelで変わって見えるなら、変換は正しく、Excelがファイルを開くときに型を推測したのです。ダウンロードしたファイルをData、From Text/CSVで取り込み、日付列を明示的に設定してください。