CSVの列を1つ増やしたら集計が止まった。修正前に確認したい3点

CSVの列を1つ増やしたら集計が止まった。修正前に確認したい3点

記事
IT・テクノロジー
先月まで問題なく動いていたスプレッドシートやGASの集計が、基幹システムのCSV出力設定を変えた途端にエラーで止まる。作り直す前に3つのポイントを確認すると、原因の特定と復旧手順の整理がしやすくなります。


1. 列番号と列名、何を手がかりに読んでいるか


CSVの集計エラーで最も頻度が高いのは、列のズレによる型の不一致です。
たとえば、従来のCSVフォーマットが「A列:日付、B列:商品名、C列:金額」だったとします。ここに管理用の「部門名」が追加され、「A列:日付、B列:部門名、C列:商品名、D列:金額」に変わった場合を考えます。
スクリプト側が「3列目(インデックス2)の数値を合計する」という固定の列番号で書かれていた場合、これまでは「金額(数値)」を計算していたプログラムが、突然「商品名(文字列)」を計算しようとして計算エラー(NaNや型の不整合)を起こします。
自作スクリプトを改修する際は、単に列番号を「3から4へ書き直す」だけの一時しのぎにするか、1行目のヘッダー行(列名)を検索して「金額」と一致する列を自動判定する仕組みに変えるかを判断します。後者に変更することで、将来的に列順が再度変更された際のエラーを防ぎやすくなります。


2. 日付・空欄・文字コードの変化も確認する


列が増えたタイミングでは、列順以外のデータ仕様も同時に変わっているケースが少なくありません。エラー調査では次の3点も併せて確認します。
1. 日付フォーマットの変化
「2026/09/01」から「2026-09-01」や「20260901」に変わったことで、日付オブジェクトへの変換に失敗していないか。
2. 新規列の空欄(null)の混入
新設された列に値が入っていない行が存在し、空白文字の処理で例外が発生していないか。
3. 文字コードの変更
システム改修によって、出力ファイルが従来のShift-JISからUTF-8(またはその逆)に変更され、文字化けや取り込みエラーになっていないか。
「列が増えたこと」だけに原因を絞り込まず、エクスポートされたCSVファイルをテキストエディタで直接開き、先頭数行の構造を客観的に見比べることが重要です。


3. 自分でできる範囲と、修正依頼が適している範囲


フォーマット変更による集計停止は、原因と影響範囲によって対処法が分かれます。
・自分で対応できる範囲
CSVの出力元(基幹システム側)の設定を従来の列順・項目構成に戻せる場合や、自作のスクリプトで修正箇所が1か所の列番号指定のみと明確に分かっている場合は、自力での修正や設定の差し戻しで解決できます。
・専門家への依頼が適している範囲
「業務上、新しい列の追加が必須である」「前任者が残したコードでロジック全体の仕様が把握できない」「集計だけでなく、その後の帳票出力やマスタ連携まで連鎖して止まっている」という場合は、無理に書き換えることで別の計算ミスを引き起こすリスクがあります。処理全体のエラーハンドリング(異常検知)を含めて改修を依頼することが確実です。


まとめとご相談について


CSV集計のトラブルは、①従来のCSVと新しいCSVの項目構成、②実際に出ているエラーメッセージ、③本来出力したい集計結果、の3点を揃えることでスムーズに原因を切り分けることができます。
▼ 業務自動化・集計修正サービス:
https://coconala.com/services/4390330">【CSV集計とPDF帳票作成を自動化します(GAS開発)】
もし現在、CSV仕様変更による集計停止やGASエラーでお困りの作業がありましたら、サービスページより、
・いつから、何を変更した後に止まったか
・エラーの概要または止まっている画面
・対象のファイル構成(個人情報を含まない列名一覧など)
を添えてご相談ください。修正の対応範囲と見積もりを確認いたします。最初の相談段階で機密データや個人情報を共有いただく必要はありません。
【参考資料】
・発行元:Google Developers
・資料名:Google Apps Script Best Practices(データアクセスの最適化・一括処理ガイド)
・確認日:2026-09-09
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す