日付形式がバラバラなCSVを正しく揃えて月次集計できるようにする実務手順
結論
CSVやExcelで日付の表示や入力形式がバラバラだと、SUMやピボットなどの集計が正しくできません。まずは少数列ならExcelの標準操作(列の書式設定、テキスト分割、文字置換)で揃え、頻繁に発生するならPower Queryやルール保存ができるツールで自動化します。データ受け取りの際は「テキスト/CSVから」など安全な読み込みを使い、Excelの自動判定に頼らないのが基本です。
原因
現場で日付が混在する主な理由は以下です。
- 送られてくるファイルの作成元で日付フォーマット(yyyy/mm/dd、dd/mm/yyyy、mm/dd/yyyy、yyyy-mm-ddなど)が異なる
- CSVをダブルクリックで開いたときにExcelが自動判定し、ロケール(地域設定)によって解釈が変わる
- 日付が文字列で入っている(ハイフンやスラッシュ、ピリオド、和暦表記、時刻付きなど)
- 空欄や不正な文字列(例:’—’や“n/a”)が混ざり、DATEVALUEなどの変換が失敗する
一番簡単な対処法
列数が少ない、発生頻度が低い場合は手作業で直すのが早いです。基本手順:
- CSVをExcelで直接開かず、「データ」→「テキスト/CSVから」や「データの取得」で読み込む。読み込み時に列の型を「テキスト」や適切な日付形式に指定できることが多いです。
- 問題の列を選択して、「ホーム」→「形式」→「セルの書式設定」で表示形式を「日付(yyyy/mm/ddなど)」に設定。ただし文字列のままでは変わらないので次を行う。
- 「データ」→「区切り位置(テキストを列に分割)」を使い、日付の区切り文字に合わせて再解釈させる。多くは区切りで正しく認識されます。
- セルに文字列として入っている場合は、空の隣列にDATEVALUEや日付を組み立てる関数で正規化する(例:=DATEVALUE(TEXT(セル,"yyyy/mm/dd")) など)。
短い置換や文字の整形はまずこれらで試してください。例:
- 検索と置換: 「.」を「/」に置換すると 2023.02.01 → 2023/02/01 として扱いやすくなることがある
- TRIM: 不要な空白を除去する。例:TRIM(A2) はセルの前後スペースを削除
- LOWER: 日付列の前後に“AM/PM”など文字が紛れたときの正規化に使う(小文字化)
- SUBSTITUTE: 区切り文字をまとめて置換する例。例:SUBSTITUTE(A2,".","/") はピリオドをスラッシュに置換
よくある失敗
- ダブルクリックでCSVを開いてExcelに勝手に解釈され、意図しない日付(特に月と日が逆になる)になってしまう
- 部分的に文字列が残っているため、ピボットやSUMIFSで集計に含まれない
- 日付なのに左寄せ(文字列扱い)で見た目は合っているが計算できない
- 時刻まで含む列を無理に日付セルに変換して時刻部分が切り捨てられる
毎回発生する場合の改善策
同じ処理を繰り返すなら手作業はコスト高です。実務で使いやすい順序は次の通りです。
- 受け取り方を標準化する:納品元に推奨フォーマット(例:YYYY-MM-DD)を依頼するテンプレートを渡す
- Excelの読み込みで型を指定するワークフローを保存する(Power Queryでの読み込み設定を保存)
- Power Queryの利用(おすすめ): 読み込み時に日付列を解析→区切り文字を統一→文字列を日付に変換→失敗行を別テーブルに分ける、という一連の処理をステップとして保存できます。次回からファイルを差し替えるだけで同じ変換が実行可能です。

DataPitaでどう楽になるか
DataPitaは次の流れで作業を助けます(機能の流れをそのまま説明します):
- 変換前のExcel/CSVをアップロードする
- 「こうしたい」という完成見本(After)をアップロードする
- Before/Afterから推定された変換方法を確認して実行する
- 確認した変換ルールを保存する
- 次回からは新しいBeforeをアップロードし、保存ルールを再利用して同じ変換を繰り返す
日付形式の例では、列の分割、区切り文字の統一(ピリオド→スラッシュ)、文字列→日付の変換、変換失敗行の抽出などをルール化できます。手順の都度設定を確認できるので、Excelの自動解釈ミスを避けつつ、毎回同じ手順を繰り返す業務に向きます。手動で関数を作るより、完成見本に合わせて可視的にルール化できる点が実務では便利です。
FAQ
- Q: CSVを開くと日付が勝手に変わってしまった。元に戻せますか?
- A: 元データに戻すには元のCSVを再読み込みし、「テキスト/CSVから」で列をテキスト指定してから適切な変換をやり直すのが確実です。
- Q: mm/dd と dd/mm の見分け方は?
- A: 日付の最大値(例:13以上の数が日か月か)で判別できるケースがありますが、確実なのは納品元にフォーマットを確認することです。ロケール設定に左右されるため、読み込み時に意図したフォーマットを指定してください。
- Q: Power Queryでは具体的に何を保存できますか?
- A: 読み込みファイルの場所指定、列の分割や置換、日付変換の手順、失敗時の処理(エラー行抽出)などのステップを保存して再利用できます。
上級者向け補足
時刻まで含むデータはISO形式(YYYY-MM-DDThh:mm:ss)に揃えると最も汎用性が高いです。また和暦や文字列に“午前/午後”が付くケースは、文字列処理(SUBSTITUTEやREPLACE)で先に不要文字を除去してから日付変換するのが堅実です。複数ロケール混在の大量ファイルは、まずサンプル抽出してパターンを洗い出すと変換ルールが作りやすくなります。
日々同じ整形作業に時間を取られているなら、まずは1回だけ手順を整理してPower Queryでステップ保存、さらにDataPitaで「Before→After」を定義してルール保存する流れを検討してください。
DataPitaで実際に試す:https://datapita.jp/?utm_source=seo&utm_medium=organic&utm_campaign=blog&utm_content=normalize-date-formats-csv
