CSVをチェックする方法は一つではない。
目視、表計算、スクリプト、ブラウザ内で動くローカルツール、クラウド型サービス。それぞれ得意な範囲が違う。
「一番高機能なもの」ではなく、今回のCSVに必要な確認を、事故なく繰り返せる方法を選ぶほうがいい。
先に見る5つの基準
比較するときは次を見る。
- ファイルを外部へ送ってよいか
- 毎回同じルールで再実行したいか
- ファイルサイズはどれくらいか
- チームで結果を共有する必要があるか
- 必須・重複だけで足りるか、複雑な型検証まで必要か
1. 目視
向いている: 数行〜数十行の小さなCSV、最終確認。
良いところは準備がいらないこと。悪いところは再現性が低く、行数が増えると見落としやすいことだ。
「ヘッダーが想定どおりか」「明らかな文字化けがないか」の確認には強い。
2. Excel / Google Sheetsなどの表計算
向いている: 数百〜数千行程度、フィルターや関数で確認したい作業。
COUNTIF、条件付き書式、フィルターなどを使えば、欠損や重複をかなり見つけられる。
一方で、CSVを開いた瞬間に日付や数値が自動変換されることがある。元CSVを保存してから作業するのが安全だ。
3. スクリプト
向いている: 大量処理、定期処理、独自ルール。
PythonやJavaScriptで検査を書けば、毎回同じルールを適用できる。複数ファイルの一括処理や、複雑な業務ルールにも伸ばしやすい。
ただし、コードを保守できる人が必要になる。単発の小さなCSVには準備が重い場合もある。
4. ローカルのブラウザツール
向いている: インストールなしで、CSVを外へ送らず、必須値や重複を繰り返し確認したい作業。
HTMLをブラウザで開くだけの構成なら、サーバーやアカウントが不要にできる。
注意点は、ブラウザのメモリに収まらないほど巨大なCSVには向かないこと。数GB級ならストリーミング処理や専用ツールのほうが適している。
5. クラウド型サービス
向いている: チーム共有、履歴管理、連携、自動実行が必要な業務。
アップロード後に結果を共有したり、APIやワークフローへ接続できるのが強みだ。
その代わり、顧客情報などを含むCSVでは「どこへ送られるか」「保存期間」「権限」を確認する必要がある。
ざっくり比較
| 方法 | 手軽さ | 再現性 | 外部送信なし | 大量処理 | 共有 |
|---|---|---|---|---|---|
| 目視 | 高い | 低い | 可能 | 弱い | 弱い |
| 表計算 | 高い | 中 | 構成次第 | 中 | 中〜高 |
| スクリプト | 低〜中 | 高い | 可能 | 強い | 構成次第 |
| ローカルブラウザ | 高い | 高い | 可能 | 中 | 弱い |
| クラウド | 高い | 高い | 原則送信あり | 強い | 強い |
ZEROHANDが最初にローカル型を作った理由
最初のCSVチェックで必要だったのは、
- 必須値が空か
- 一意列が重複していないか
- ヘッダーや列数が壊れていないか
- 問題行をレポートにできるか
という小さな範囲だった。
ここにログイン、DB、クラウド保存を足すと、販売前にインフラの仕事が増える。
そこでまず「ローカルで完結する最小構成」を選んだ。必要性が観測されてから、型検証や共有機能へ広げる。
実際の壊れ方を手元で比較したい場合は、正常・必須欠損・重複・重複ヘッダーのサンプルCSVを無料で使える。
ツール選びの基準は機能数ではない。扱うデータと、失敗したときのコストに合っているかで決める。