ExcelのNORMDIST関数の使い方|正規分布(旧: NORM.DIST)
古いExcelファイルを開いたとき、=NORMDIST(...) という数式が入っていて、どう読めばいいか迷ったことはありませんか。これはExcelの統計関数のひとつで、正規分布の確率を計算する関数です。
NORMDIST関数はExcel 2003以前から使われている互換性関数です。Excel 2010以降では新しい NORM.DIST 関数が登場しています。ただし古いテンプレートや引き継いだファイルでは今も現役で動いていることが多いんですよね。
この記事では、ExcelのNORMDIST関数の構文と使い方を解説します。新関数 NORM.DIST との違いや、品質管理・成績分析での実務活用例まで網羅していきますよ。よくあるエラーの対処法と、新関数への移行ガイドも一緒に確認していきましょう。
ExcelのNORMDIST関数とは
ExcelのNORMDIST関数は、正規分布の確率を計算する統計関数です。使い方に応じて「累積確率(ある値以下になる確率)」と「確率密度(分布の密度値)」の2種類の値を返せます。
Excel 2003以前から提供されている古い関数で、現行のExcelでは「互換性関数」に分類されています。Excel 2010以降では後継関数の NORM.DIST(ドットあり)が用意されました。Microsoft はそちらの利用を推奨していますよ。
ただし互換性関数も引き続き利用できるため、過去のExcelファイルや業務テンプレートで使われている数式を読み解く場面では、NORMDISTの知識が欠かせません。
NORMDISTとNORM.DISTの早見表
| 項目 | NORMDIST(旧) | NORM.DIST(新) |
|---|---|---|
| 導入バージョン | Excel 2003以前 | Excel 2010以降 |
| 引数の数 | 4個 | 4個(同じ) |
| 計算結果 | 同じ | 同じ |
| 位置づけ | 互換性関数(旧版互換用) | 推奨関数(現行) |
NORMDISTとNORM.DISTの違い
NORMDISTとNORM.DISTの違いは、名前だけです。引数の数・順番・計算結果は完全に一致します。Excel 2010でMicrosoftが関数名の命名規則を整理したときに、ドット(.)付きの新名称が導入された経緯があります。
=NORMDIST(x, 平均, 標準偏差, 関数形式) ← 旧(互換性関数)
=NORM.DIST(x, 平均, 標準偏差, 関数形式) ← 新(推奨)
既存の =NORMDIST(...) を =NORM.DIST(...) に置き換えるだけで、結果は完全に同じになりますよ。
どちらを使うべきか
新規ファイルを作るなら NORM.DIST を使うのが正解です。関数の入力候補に表示されやすく、将来のExcelバージョンでも引き続きサポートされる見込みが高いですよ。
一方で、以下のケースでは NORMDIST をそのまま使い続けて問題ありません。
- Excel 2007以前のバージョンと共有するファイル(
.xls形式) - 既存の業務テンプレートに NORMDIST が組み込まれていてメンテナンスする場合
- 古いVBAマクロが NORMDIST を呼び出している場合
NORMDIST関数の構文と引数
NORMDIST関数の構文は次のとおりです。
=NORMDIST(x, 平均, 標準偏差, 関数形式)
4つの引数すべてが必須です。それぞれの意味と制約を表で整理します。
| 引数名 | 説明 | 制約 |
|---|---|---|
| x | 確率を求める値 | 任意の実数 |
| 平均(Mean) | 分布の平均値(μ) | 任意の実数 |
| 標準偏差(Standard_dev) | 分布の標準偏差(σ) | 正の数のみ(0以下は #NUM! エラー) |
| 関数形式(Cumulative) | TRUEまたはFALSEで戻り値の種類を切り替え | TRUE = 累積分布関数、FALSE = 確率密度関数 |
第4引数「関数形式」が使い方のカギです。TRUE と FALSE で返ってくる値の意味がまったく異なりますよ。
「TRUE」と「FALSE」の違いを数式で確認
NORMDISTの使い方で最初に押さえておきたいのが、第4引数(関数形式)の意味です。
「平均60、標準偏差10のテストで、75点はどの位置にあるか」を例に計算してみましょう。
TRUE(累積分布関数)
=NORMDIST(75, 60, 10, TRUE)
戻り値: 約 0.9332
「75点以下に約93.32%の人がいる」という意味です。言い換えると、75点は上位約6.68%に位置することがわかりますよ。このように「ある値以下の確率(P(X ≤ x))」を求めるときに使います。
FALSE(確率密度関数)
=NORMDIST(75, 60, 10, FALSE)
戻り値: 約 0.01295
こちらは「75点付近の確率密度」を返します。この値自体は確率ではなく密度なので、「0.01295の確率で75点になる」という意味ではありません。正規分布の曲線を描く(グラフ化する)ときに使う値ですよ。
実務でよく使うのは TRUE の累積確率のほうです。「ある値以下(または以上)の確率は何%か」という問いに答えるのに向いています。
正規分布とは?68-95-99.7ルールをExcel数式で確認
NORMDIST関数を活用するには、正規分布の基本的な性質を理解しておくと便利です。
正規分布は左右対称な釣り鐘型(ベルカーブ)の分布で、「平均値の近くにデータが集まりやすく、離れるほど少なくなる」形をしています。身長・体重・テストの点数・製品の寸法など、自然界や社会の多くの現象がこの分布に従うと言われています。
正規分布には「68-95-99.7ルール」と呼ばれる経験則があります。標準正規分布(平均0、標準偏差1)で実際にExcelで確認してみましょう。
| 範囲 | 数式 | 結果 |
|---|---|---|
| 平均±1σ内(約68%) | =NORMDIST(1,0,1,TRUE)-NORMDIST(-1,0,1,TRUE) | 約 0.6827 |
| 平均±2σ内(約95%) | =NORMDIST(2,0,1,TRUE)-NORMDIST(-2,0,1,TRUE) | 約 0.9545 |
| 平均±3σ内(約99.7%) | =NORMDIST(3,0,1,TRUE)-NORMDIST(-3,0,1,TRUE) | 約 0.9973 |
この「引き算の構造」がポイントです。NORMDIST(上限) - NORMDIST(下限) で「下限から上限の間に入る確率」が計算できますよ。
NORMDIST関数の実務での活用例
NORMDISTがどんな業務で役立つのか、具体的なシーンを2つ紹介します。
品質管理:規格内に収まる確率を計算する
製造業では、製品の寸法が正規分布に従うと仮定して品質管理を行います。「平均10mm、標準偏差0.1mmの部品で、規格内(9.8mm〜10.2mm)に収まる確率」を求めてみましょう。
=NORMDIST(10.2, 10, 0.1, TRUE) - NORMDIST(9.8, 10, 0.1, TRUE)
戻り値は 約 0.9545(95.45%) です。これはちょうど平均±2σの範囲で、68-95-99.7ルールと一致しますね。
規格範囲を変えたり、標準偏差を変えて「σを改善したらどのくらい不良率が下がるか」をシミュレーションするのにも活用できますよ。
成績分析:点数の上位パーセンタイルを求める
テストの点数が正規分布に従うと仮定して、「平均60点・標準偏差15点のテストで、90点を取った人は上位何%か」を求めます。
=1 - NORMDIST(90, 60, 15, TRUE)
戻り値は 約 0.0228(約2.28%) です。90点が全体の上位約2.28%に位置することがわかりますよ。
TIP
「上位何%か」を求めたいときは
=1 - NORMDIST(x, 平均, 標準偏差, TRUE)の形を使います。累積確率は「x以下の確率」なので、1から引くと「xより大きい確率(=上位の割合)」になりますよ。
NORMDISTでよくあるエラーと対処法
NORMDIST関数で起きやすいエラーをまとめます。
| エラー | 主な原因 | 対処法 |
|---|---|---|
#NUM! | 標準偏差に 0 以下の値を指定した | 標準偏差は必ず正の数(0より大きい値)を指定する |
#VALUE! | 引数のいずれかに文字列など数値以外が入っている | セル参照先のデータ型を確認する |
#NAME? | 関数名のスペルミス | NORMDIST が正しい綴り(ピリオドなし)か確認する |
最も多いのが #NUM! エラーです。標準偏差に 0 を入れてしまったり、負の値が入っているセルを参照したときに発生します。標準偏差は「データのばらつき具合を表す正の数」なので、0 以下はあり得ないと覚えておきましょう。
#NAME? は、新関数 NORM.DIST と混同してドットを付けてしまったときに起こりがちです。互換性関数の NORMDIST はピリオドなしですよ。
NORM.DISTへの移行ガイド
既存の NORMDIST 数式を新関数 NORM.DIST に書き換えるときの対応は、とても簡単です。
| 旧関数の数式 | 新関数の同等数式 |
|---|---|
=NORMDIST(x, 平均, 標準偏差, TRUE) | =NORM.DIST(x, 平均, 標準偏差, TRUE) |
=NORMDIST(x, 平均, 標準偏差, FALSE) | =NORM.DIST(x, 平均, 標準偏差, FALSE) |
引数の変更は不要で、関数名の部分だけ書き換えれば完了です。
一括置換の手順
ファイル内の NORMDIST を一括で置換したい場合は、Ctrl + H(置換ダイアログ)が効率的です。
- 検索する文字列:
NORMDIST( - 置換後の文字列:
NORM.DIST(
これだけで全数式を一気に置き換えられますよ。置換後は数式の一部をサンプルチェックして、結果が変わっていないことを確認してから上書き保存してくださいね。
まとめ:NORMDIST関数で正規分布の確率を計算しよう
ExcelのNORMDIST関数のポイントを整理します。
- NORMDIST関数は正規分布の確率を計算する旧版(互換性関数)
- 構文は
=NORMDIST(x, 平均, 標準偏差, 関数形式)の4引数 - 第4引数が
TRUEなら累積確率(P(X ≤ x))、FALSEなら確率密度を返す - Excel 2010以降の後継は NORM.DIST(名前以外は同じ)
- 移行は関数名部分を NORMDIST → NORM.DIST に書き換えるだけ
- 品質管理・成績分析・自然現象の確率計算に幅広く活用できる
#NUM!エラーは標準偏差に 0 以下の値を入れたときに発生する
正規分布は「68-95-99.7ルール」さえ頭に入れると、データを見たときに「だいたいどの範囲に収まるか」がすぐイメージできるようになりますよ。NORMDIST関数とセットで活用してみてくださいね。
確率分布関数のシリーズ記事として、NORM.DIST関数、NORM.INV関数、NORM.S.DIST関数、NEGBINOMDIST関数、HYPGEOMDIST関数も合わせて読むと、Excelの統計関数全体の見通しがよくなりますよ。
