Excelで管理している顧客台帳、受注一覧、商品マスタなどのデータが増えると、どの表に何を保存すべきか、同じ情報をどこまで重複させてよいか迷う場面があります。
その整理に役立つ考え方が、データの対象と関係を図で表すE-R図です。
Excelは本格的なデータベース設計ツールではありませんが、表、図形、コネクタ、セルの罫線を使うことで、要件を関係者と共有するためのE-R図を十分に作成できます。
E-R図は、管理したい対象と対象同士のつながりを可視化する設計図です。
Excelで先に関係を整理しておくと、テーブルの重複、入力漏れ、集計しにくい列構成を見つけやすくなります。
この記事では、ExcelのE-R図の意味、基本記号、作成手順、データベース設計に活かす考え方を順番に解説します。
ExcelでE-R図を作成する方法
それではまず、ExcelでE-R図を作成する具体的な方法について解説していきます。
| 顧客 | 受注 | 商品 |
|---|---|---|
| 顧客ID | 受注ID | 商品ID |
| 顧客名 | 顧客ID | 商品名 |
| 電話番号 | 受注日 | 単価 |
管理対象の洗い出し
最初に行うのは、業務で管理したい対象を名詞で書き出す作業です。
販売管理なら顧客、商品、受注、受注明細、担当者、支払などが候補になります。
対象を表す名詞が、E-R図におけるエンティティの出発点です。
Excelの新しいシートに候補を一つずつ入力し、同じ意味の言葉が混在していないか確認しましょう。
たとえば取引先と顧客が同じ対象なら、どちらか一方の名称に統一します。
この段階で画面項目や帳票の見出しを集めると、実務に必要なデータを漏れなく拾いやすくなります。
対象の名前は、後でテーブル名やシート名にも使いやすい短く明確な名称にそろえる方法が実用的です。
図形によるエンティティの配置
エンティティが決まったら、Excelの挿入タブから図形を選び、角丸四角形または長方形を配置します。
図形の上部には顧客や受注などのエンティティ名を入力し、その下には主な項目を改行して記載します。
顧客IDのように一意に識別する項目は、先頭に置くと読み手が理解しやすくなります。
図形をコピーしてサイズを統一すれば、設計図としての視認性も上がります。
列幅と行高を整え、セルの枠線を使って疑似的な表にする方法もあります。
ただし、関係線を柔軟に引くなら図形を中心にしたレイアウトが扱いやすいでしょう。
コネクタによる関係線の設定
続いて、挿入タブの図形からコネクタを選び、関係のあるエンティティ同士を線で結びます。
顧客と受注なら、顧客一人が複数の受注を持つ関係として線の近くに一対多と分かる注記を置きます。
線は項目ではなく、原則としてエンティティ同士の業務上の関係を表すものです。
交差する線が増えたときは、受注を中央に置くなど、関係の多いエンティティを中心に再配置します。
印刷する場合はページレイアウトで横向きを選び、余白を狭くすると図全体を確認しやすくなります。
【操作のポイント】コネクタは図形に接続しておくと、図形を移動しても線の端点が追従します。

E-R図の意味と構成要素
続いては、E-R図の意味と読み取るための基本要素を確認していきます。
| 要素 | E-R図での役割 | 販売管理の例 |
|---|---|---|
| エンティティ | 管理対象 | 顧客、商品 |
| 属性 | 対象の情報 | 顧客名、商品名 |
| リレーションシップ | 対象間の関係 | 顧客が受注する |
エンティティと属性の区別
E-R図のEはEntity、RはRelationshipを指し、日本語では実体関連図と呼ばれます。
エンティティは独立して管理する対象であり、属性はその対象を説明する情報です。
顧客はエンティティであり、顧客名、住所、電話番号は顧客に属する属性になります。
商品もエンティティですが、商品名や標準単価は商品に属する属性です。
一つの項目が単独で増減し、履歴や識別子を持つなら、属性ではなく別エンティティである可能性を検討します。
たとえば住所変更の履歴を管理する必要があるなら、住所を単なる列ではなく履歴用のテーブルに分ける設計も考えられます。
主キーと外部キーの役割
各エンティティには、レコードを重複なく識別する主キーを設定します。
顧客テーブルでは顧客ID、商品テーブルでは商品ID、受注テーブルでは受注IDが代表例です。
一方、別のテーブルの主キーを参照する列は外部キーと呼ばれます。
受注テーブルに顧客IDを持たせると、その受注がどの顧客のものかを結び付けられます。
顧客テーブルの主キーは顧客IDです。
受注テーブルの顧客IDは、顧客テーブルの顧客IDを参照する外部キーです。
Excelの一覧でもIDを使って表を分けておけば、XLOOKUP関数やピボットテーブルで情報を組み合わせやすくなります。
カーディナリティの考え方
カーディナリティとは、一件のデータに対して関連データが何件あり得るかを示す考え方です。
顧客一人に複数の受注がある関係は一対多です。
一つの受注に複数の商品が含まれる場合、受注と商品の関係はそのままでは多対多になります。
多対多の関係は、通常は中間テーブルを作って二つの一対多へ分解します。
販売管理では受注明細を中間テーブルにし、受注と受注明細、商品と受注明細を結びます。
【操作のポイント】関係線の近くには一と多が分かる表記を置き、後から見た人が関係の方向を判断できるようにします。

Excel表からE-R図へ整理する手順
続いては、既存のExcel表をもとにE-R図へ整理する手順を確認していきます。
| 受注ID | 受注日 | 顧客名 | 商品名 | 数量 |
|---|---|---|---|---|
| O001 | 2026/08/01 | 青木商店 | 商品A | 3 |
| O001 | 2026/08/01 | 青木商店 | 商品B | 1 |
繰り返し項目の発見
既存表を確認するときは、一つの受注IDに対して複数行があるかを調べます。
上の例では受注IDのO001が二行に繰り返されており、一件の受注に複数商品が含まれていると分かります。
このような繰り返しは、受注と受注明細を分ける必要性を示す大切な手掛かりです。
同様に、同じ顧客名と住所が何度も現れるなら、顧客情報を別の顧客テーブルとして持つことを検討します。
繰り返しの多い情報を一枚の表に詰め込むほど、更新時の不整合が起こりやすくなります。
顧客の電話番号を変更したのに古い受注行だけ残ると、どちらが正しい情報か判断できなくなるためです。
テーブル分割の設計
販売管理の一覧を分割するなら、顧客、商品、受注、受注明細の四つが基本構成になります。
顧客テーブルには顧客IDと顧客名を、商品テーブルには商品IDと商品名を保存します。
受注テーブルには受注ID、受注日、顧客IDを保存し、受注明細には受注明細ID、受注ID、商品ID、数量を保存します。
ここで受注明細に商品名を重複して保存しないようにすると、商品名変更時の修正箇所を商品テーブルへ集約できます。
受注金額は、単価と数量から計算できる値です。
計算式は単価×数量となり、集計用途や履歴保持の要件に応じて保存するか計算するかを決めます。
ただし、過去の受注時点の単価を残す必要がある場合は、受注明細に受注単価を持たせる設計が必要です。
Excel関数による確認
テーブル分割の前後で件数を確認すると、データ移行時の漏れを発見しやすくなります。
たとえば元データのA列が受注IDで、1行目がヘッダーの場合、重複を除いた受注件数は次の数式で確認できます。
=COUNTA(UNIQUE(A2:A1000))
Microsoft 365などでUNIQUE関数を利用できる環境なら、重複しない受注IDの数を求められます。
受注明細に分割した後も、明細行の総数や受注IDの種類数を比較し、想定と一致するか確認しましょう。
数式はA2から始めることで、1行目のヘッダーを集計対象から外せます。
【操作のポイント】分割作業の前に元データを複製し、件数照合用のシートを残しておくと検証が安全です。

Excelの図形とコネクタによる作図操作
続いては、Excelの図形とコネクタを使って見やすいE-R図を作図する操作を確認していきます。
| 操作 | Excelの機能 | 目的 |
|---|---|---|
| 箱を作る | 挿入タブの図形 | エンティティの配置 |
| 線で結ぶ | コネクタ | 関係の表示 |
| 整列する | 配置メニュー | 視認性の向上 |
挿入タブから図形を配置する操作
挿入タブを開き、図形から長方形を選択してワークシート上へドラッグします。
図形を右クリックしてテキストの編集を選べば、エンティティ名と項目名を直接入力できます。
見出し部分を太字にし、主キーにはPK、外部キーにはFKの補足を付けると設計意図が伝わりやすくなります。
ただしPKやFKの表現ルールは、図の中で一貫させることが大切です。
図形の塗りつぶし色は種類ごとに使い分けすぎず、二色程度に抑えると読みやすさを保てます。
コネクタと整列機能の活用
図形を選択した状態で挿入タブからコネクタを選び、図形の接続点へ線を伸ばします。
通常の直線ではなくコネクタを使うと、エンティティの移動後も接続関係を保ちやすくなります。
複数の図形を選択して図形の書式タブの配置を使うと、左右揃えや上下に整列を実行できます。
同じ種類のエンティティを横方向にそろえ、親となるテーブルを左側または上側に置くと流れを読み取りやすくなります。
顧客から受注へ一対多の関係を置く場合は、顧客を左、受注を右に配置する設計が一例です。
受注明細のような関係の集中するテーブルは、受注と商品の間に置くと線の交差を抑えられます。
印刷と共有のための調整
作図後は表示タブの目盛線を必要に応じて非表示にし、図形だけが見える状態で確認します。
ページレイアウトタブで印刷の向き、余白、拡大縮小を設定し、PDF化したときに文字が読める大きさか確かめましょう。
図だけを共有する場合は、図形を選択してコピーし、PowerPointやWordへ貼り付ける方法も便利です。
E-R図は完成後も業務変更に合わせて更新する資料であり、作成日と対象範囲を記載しておくと管理しやすくなります。
【操作のポイント】図形のグループ化は配置が固まってから行うと、修正と移動を両立しやすくなります。
データベース設計で確認する注意点
続いては、E-R図をデータベース設計へつなげるときの注意点を確認していきます。
| 確認項目 | 確認内容 |
|---|---|
| 重複 | 同じ情報を複数テーブルへ持たせない |
| 識別子 | 主キーで一意に判別できる |
| 履歴 | 変更前の値を残す要件がある |
正規化と重複データの見直し
正規化とは、データの重複や更新時の矛盾を減らすためにテーブルを整理する考え方です。
受注一覧の各行に顧客住所や商品名を繰り返し入力している場合、その情報は顧客テーブルや商品テーブルへ分ける候補になります。
住所のように顧客に従属する情報を顧客テーブルへ置けば、変更時に一か所を更新するだけで済みます。
一方で、受注時点の商品名や単価を残す必要がある業務では、あえて明細側に履歴情報を持たせる判断もあります。
正規化は機械的に分割する作業ではなく、業務で必要な時点情報を見極める設計判断です。
中間テーブルと明細テーブルの設計
一件の受注に複数の商品があり、一つの商品も複数の受注に含まれる場合は、多対多の関係になります。
この場合は受注明細テーブルを作り、受注IDと商品IDを外部キーとして保存します。
受注明細には数量、受注単価、値引額など、その組み合わせに固有の情報を持たせられます。
会員とイベント、従業員とプロジェクトのような関係でも、参加や割当を表す中間テーブルが役立ちます。
受注明細の金額は、受注単価×数量で計算できます。
ExcelでB列が受注単価、C列が数量なら、1行目をヘッダーとしたD2の数式は =B2*C2 です。
数式をD2へ入力し、セル右下のフィルハンドルを下へドラッグすると、明細行へオートフィルできます。
入力規則とデータ整合性の管理
Excelを簡易データベースとして使う場合も、入力規則を設定すると設計した関係を保ちやすくなります。
受注明細の顧客IDや商品IDには、別シートのマスタを参照するドロップダウンリストを設定できます。
これにより、表記ゆれや存在しないIDの入力を抑えられます。
ただしExcelだけでは外部キー制約のような厳密な整合性管理には限界があります。
複数人が同時に大量データを更新する段階では、Access、SQL Server、クラウドデータベースなどへの移行も検討対象です。
【操作のポイント】マスタ一覧はExcelテーブル化し、参照範囲を名前定義しておくと入力規則の管理が安定します。
まとめ ExcelのE-R図の活用と作成方法
ExcelのE-R図は、顧客、商品、受注といった管理対象を整理し、データ同士の関係を共有するための有効な設計資料です。
まずは業務に登場する名詞からエンティティを洗い出し、それぞれに必要な属性と主キーを定めます。
次に、外部キーと一対多の関係を図形とコネクタで表すことで、データの流れを見える形にできます。
既存の一覧表で繰り返されている情報を見つけることが、適切なテーブル分割への第一歩です。
多対多の関係には中間テーブルを置き、履歴として残すべき値とマスタから参照できる値を区別しましょう。
Excelで図を作成して関係者と認識をそろえてからデータベース化すれば、作成後の手戻りを減らしやすくなります。
小規模な台帳でも、E-R図の考え方を取り入れて、入力しやすく集計しやすいデータ構造を整えていきましょう。