スプレッドシート

乱雑なスプレッドシートは「汚いデータ」ではない。業務のデータだ。

結合されたヘッダー、小計行、1 枚のシートに 3 つの表、先月はテキストで今月は数値になっている列。データチームはこれを「汚い」と呼びます。しかし、それは業務情報が実際に取る形です。ツールがその形に合わせるべきです。

どのデータチームにも、事業部門から届くファイルを指す言い回しがあります。汚いデータ、乱雑なデータ、非構造化データ。この言い回しには判決が含まれています。ファイルが間違っているのだから、本当の作業を始める前に誰かが直さなければならない、という判決です。

けれども実際にファイルを見てみると、その判決は成り立ちません。典型的な 1 つを挙げます — 在庫_2026-08_v3_最終.xlsx の「倉庫別在庫」シートです。

  • タイトル行があり、次に空白行、そして 2 つのセルが結合されているために 2 行にまたがるヘッダー行。
  • 1 枚のシートに 3 つの領域が積み重なり、それぞれに太字の小計行がある。
  • 最下部に総計、その横に赤字のメモ:「返品センターは除外」。
  • 在庫数 という列は、ある領域ではテキストとして入力され、ほかの領域では数値になっている。

このファイルを雑に作った人はいません。誰かが、月曜の朝に人が読むために、丁寧に作ったのです。ここに挙げた特徴のひとつひとつが情報です。

乱雑さが伝えていること

「乱雑さ」実際に伝えていること
結合されたヘッダーセルこれらの列はひとまとまりである。複数期間にまたがる 1 つの指標だ
太字の小計行データにはグループがあり、ここがその区切りだ
1 枚のシートに 3 つの表これらは、使う人たちによって横に並べて比較されている
赤字のメモ既知の例外を、読む人の目に入る場所に書いてある
数値列の中のテキストこれらの値は手入力された。より慎重に扱うべきだ

「まずきれいにして」は、そのすべてを消してしまいます。小計は消え、グループは消え、メモも消え、赤字のメモの意味を知っていた人は、本来の仕事の代わりにデータ入力をしていることになります。

業務データとは、人のために作られたデータ

データウェアハウスが期待するファイル — 1 シートに 1 テーブル、ヘッダー行は 1 行、1 列に 1 つの型 — は、機械のために作られたデータです。事業が実際に回っているファイルは、人のために作られたデータです。どちらも正当です。ただし、事業が実際にどう動いているかについて信頼できる出所となるのは片方だけで、それは整ったほうではありません。

だからこそ「データをきれいにしよう」という助言は、現場で失敗し続けます。変わるべき相手を間違えているのです。人が読むために表を作っている人たちが、パーサーのために表を作り始めることはありません。ツール側が、ファイルのあるところまで歩み寄る必要があります。

ファイルをそのまま読む

ファイルのあるところに合わせるとは、推測することではありません。次の 3 つの具体的な約束を意味します。

  1. 元ファイルを保つ。 アップロードされた 在庫_2026-08_v3_最終.xlsx はそのまま、バイト単位で保たれます。その場で何かを「直す」ことはしません。
  2. その横に型付きの写しを作る。 「倉庫別在庫」から、名前と型を持つ列のテーブルを作ります。商品コード は識別子、在庫数 は数値、倉庫 はカテゴリとして。小計行は小計として認識され、二重に合算されることはありません。
  3. どうやって一方が他方になったのかを記録する。 構造化そのものが系譜を持つ 1 つのステップなので、型付きテーブルのどの数字も元のセルまで追えます — 手入力されたテキストの値も、赤字のメモが除外している行も含めて。

この最後の約束が、「乱雑なファイルを読む」と「乱雑なファイルを当て推量する」を分けます。ファイルを構造化しても、何をしたのかを示せないツールは、二番目の、もう少し整った乱雑さを作っただけです。

D2B ではこれが既定の経路です。人が読むために作られた表がそのまま入り、忠実な生テーブルと構造化された型付きテーブルとして着地し、その後のすべての transformation が系譜を引き継ぎます。構造化も、ほかのステップと同じようにレビューできます。

在庫_2026-08_v3_最終.xlsx → "倉庫別在庫"
  raw table            (every cell, as uploaded)
  倉庫別在庫 (typed)   商品コード: id · 倉庫: text · 在庫数: number
  lineage              typed row → raw cell, for every value

「汚い」と呼ぶのをやめると何が変わるか

乱雑なファイルが障害物ではなく入力になると、いくつかのことが続いて起こります。

  • ファイルを理解している人が、自分の役割にとどまれます。その人は構造をレビューするだけで、打ち直しはしません。
  • 例外が生き残ります。赤字のメモは記録されたルール(「返品センターを除外」)になり、3 か月目に誰かが忘れるものではなくなります。
  • 結果は、人が使う形で戻ってきます。型付きテーブルは分析のために存在し、人が開く Excel は変わらず自分の Excel のまま、値だけが更新され、書式はそのままです。

乱雑なスプレッドシートは、分析の前に解決すべき問題ではありません。それは分析の本当の入力であり、事業が自分の数字をどう捉えているかの記録です。やるべき仕事は、それを忠実に読み、元ファイルを保ち、経路を示すことです。事業部門に機械向けの書き方を求めることではありません。

よくある質問

分析ツールにとって、スプレッドシートが「乱雑」になるのは何が原因ですか?

人にとっては読みやすく、パーサーにとっては扱いにくいものすべてです。結合されたヘッダーセル、データの中に混ざった小計行や合計行、1 枚のシートに並ぶ複数の表、装飾用の行、表記の揺れ、そして月ごとに型が変わる列などです。

AI に渡す前に、スプレッドシートをきれいにしておくべきですか?

原則としては不要です。手作業のクレンジングは時間がかかり、意味を担っていたレイアウトを捨て、しかも他の誰も見覚えのない写しを生み出します。ツール側がファイルをそのまま読み、元ファイルを保ち、構造化のために何をしたのかを示すべきです。

入力ファイルが乱雑でも、分析の信頼性は保てますか?

2 つを保てば可能です。手を加えていない元ファイルと、それを型付きテーブルに変えた全ステップの記録です。そうすれば結果に出てくるどの数字も、乱雑さも含めて、元のセルまで追えます。

タグ: この記事を Markdown で

原文は英語です。これは日本語版です。

Excel を、整える前のまま送ってください

D2B は人が読むために作られた表をそのまま受け取り、どの数字も元まで追えて、元の書式の Excel で返します。クレジットカード不要で無料で始められます。