🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

Excel COMBIN・PERMUT — 組み合わせと順列(順番は関係する?)

|

Excel COMBIN・PERMUT — 組み合わせと順列(順番は関係する?)

TL;DR — どちらも n 個から k 個を選ぶ方法が何通りあるかを数えます。PERMUT は 順番が関係するときに数え(金/銀/銅は 銅/銀/金 とは別物)、COMBIN は順番が関係しない ときに数えます(宝くじの券は、どんな順番でも同じ数字なら同じ)。COMBIN は常により 小さく — PERMUTk! で割ったものです。関数を選ぶ問いはただ 1 つ:順番は関係する? 間違えても Excel はエラーを出さず、k! 倍だけずれた数を返すだけです。2 つのいとこ PERMUTATIONACOMBINA は、重複を許す場合を扱います。

=PERMUT(10, 3)        ' 順序あり:10×9×8 -> 720
=COMBIN(10, 3)        ' 順序なし:720 / 3! -> 120
=COMBIN(49, 6)        ' 宝くじの確率:49 個から 6 個を選ぶ -> 13,983,816
=PERMUTATIONA(10, 3)  ' 順序あり、重複可:10^3 -> 1000
=COMBINA(10, 3)       ' 順序なし、重複可 -> 220

「Excel 組み合わせ」で検索すれば構文は手に入ります — =COMBIN(number, number_chosen) — が、難しかったのは構文ではありません。難しいのは どちら の関数が必要かを 見極めることです。COMBINPERMUT はほとんど同じ問いに答えながら、まったく違う数を返し、 しかも Excel は不満の一声も漏らさずに間違ったほうを平気で返します。このページは、すべてを 決める唯一の区別から始めます。

この記事で学べること

  • 考え方の軸:順番は関係する? — 選択を決めるたった 1 つの問い
  • COMBIN が常に PERMUT より小さい理由(ちょうど k! の分だけ)
  • 2×2 の表:順序 × 重複 → 4 つの関数
  • 実例:宝くじの確率、表彰台、委員会、暗証番号
  • 間違ったほうを選んでもエラーが出ず、静かに間違った数が返る理由
  • k > n や引数が負のときに当たる #NUM!

考え方の軸:順番は関係する?

どちらの関数も同じ設定から始まります — n 個の異なるものがあり、そこから k 個を選びます。 組み合わせと順列を分ける 唯一 のものは、同じ選んだ項目を並べ替えたものを新しい結果として 数えるかどうかです。

  • 順番が関係する → 順列 → PERMUT 金・銀・銅のメダル:アナが金、ベンが銀なら、それは ベンが金、アナが銀とは 別の 結果です。並び順が答えの一部です。
  • 順番が関係しない → 組み合わせ → COMBIN 宝くじの券や委員会:{3, 17, 42} を選ぶのは {42, 3, 17} を選ぶのと 同じ です。並び順ではなく、顔ぶれだけが重要です。

これで決定のすべてです。ほかのすべての細部 — 構文、いとこたち、エラー — は、この 1 つの問いに ぶら下がっています。関数名を打つ にこれを尋ねれば、間違ったほうに手を伸ばすことは二度と ありません。

COMBIN が常に小さい理由

その関係を具体的に示すと、こうです。

=PERMUT(10, 3)   ' -> 720
=COMBIN(10, 3)   ' -> 120

どちらも 10 から 3 を選びます。PERMUT720COMBIN120 — ちょうど 6 分の 1 です。 その 6 は 3!3×2×1)、選んだ 3 個を 並べ替える 方法の数です。PERMUT は 3 個の各 グループを、その並べ方の数だけ重複して数えます。COMBIN はそれらの並べ方をすべて 1 つの 選び方にまとめます。つまり:

COMBIN(n, k) = PERMUT(n, k) / k!

だから組み合わせは、対応する順列より大きくなることは決してなく、これは手軽な健全性チェックに なります。もし「組み合わせの数」が順列の数より 大きく 出たら、2 つの関数を取り違えています。 この関係は階乗にもまっすぐつながります — PERMUT(n,k)n!/(n−k)!COMBIN(n,k)n!/(k!·(n−k)!) — だから FACT ガイド が両者の土台になっています。

2×2 の表:順序 × 重複

「順番は関係する?」が主軸です。もう 1 つの問い — 同じ項目を 2 回以上選べるか? — が各 答えを 2 つに分け、Excel の 4 つの数え上げ関数になります。

重複なし 重複あり
順序が関係する PERMUT(n,k) PERMUTATIONA(n,k)
順序が関係しない COMBIN(n,k) COMBINA(n,k)
=PERMUT(10, 3)        ' 順序あり、重複なし -> 720
=PERMUTATIONA(10, 3)  ' 順序あり、重複可 -> 10^3 = 1000
=COMBIN(10, 3)        ' 順序なし、重複なし -> 120
=COMBINA(10, 3)       ' 順序なし、重複可 -> 220

…A のいとこたちが「重複あり」の列です。数字が繰り返せる 3 桁の暗証番号は PERMUTATIONA(10, 3) — 順番が関係し、7-7-7 も認められるので、PERMUT720 ではなく 10³ = 1000 です。10 種類のフレーバーから、同じフレーバーを重ねてもよく、ボウルの中の順番は 関係しない形でアイスを 3 すくい選ぶのは COMBINA(10, 3) = 220 です。日常の問題のほとんどは 左上・左下の「重複なし」の列にありますが — 重複が選択肢に入るときは、…A 版があなたの求める ものです。

具体例で解く

関数は、実際の問いの上で生き生きとしてきます。

=COMBIN(49, 6)   ' 宝くじ:49 個から 6 個、順序は無関係 -> 13,983,816
=PERMUT(8, 3)    ' レース:8 人の走者から 金/銀/銅 -> 336
=COMBIN(10, 3)   ' 委員会:10 人から任意の 3 人 -> 120
=PERMUTATIONA(26, 4) ' 4 文字コード、文字は繰り返し可 -> 456,976
  • 宝くじの確率。 49 個から 6 個を選ぶ。順番は決して関係しない。=COMBIN(49,6)13,983,816 を返す — つまり 6 個すべてを当てる確率はおよそ 1,400 万分の 1 です。
  • 表彰台。 8 人の走者に 3 つのメダル。順番がすべてです。=PERMUT(8,3) = 336
  • 委員会。 10 人から 3 人。委員会は集合であって、順位付けではありません。 =COMBIN(10,3) = 120
  • 繰り返しのあるコード。 26 種のうち 4 文字、重複可:=PERMUTATIONA(26,4) = 456,97626⁴)。

表彰台(336)は何をも圧倒しませんが、宝くじ(約 1,400 万)は膨大です — 組み合わせの数は 急速に増える。これは PRODUCTFACT を貫くのと同じ、爆発的な掛け算のテーマです。

静かなエラー:関数の選び間違い

「順番は関係する?」の問いを繰り返し叩き込む価値を生むのが、この危険です。COMBIN のつもりで PERMUT を選ぶと、Excel は完全に有効な、しかし端的に間違った数を返しますk! 倍だけ 大きすぎるのです。#VALUE! もなければ、赤信号もありません。720120 と同じくらい正当に 見えます。宝くじの確率計算で COMBIN ではなく PERMUT を使えば、ありうる券の数を 720 倍に 過大評価し、下流のあらゆる確率を静かに壊します。

防御策は数式のトリックではありません — 関数を選ぶ前に順番の問いを声に出して尋ね、桁の大きさを 確かめる規律です(組み合わせは、対応する順列より 小さく 出るはずです)。これは構文の問題では なく、判断の問題です。

出会うことになるエラー

これらの関数が 実際に エラーになるとき、原因はたいていタイプミスではなく、不正な引数です。

=COMBIN(5, 10)   ' 手持ちより多く選ぶ -> #NUM!
=PERMUT(-1, 2)   ' 負の引数 -> #NUM!
=COMBIN(10, 3.9) ' 非整数は切り捨て -> COMBIN(10, 3) = 120 として扱われる
=COMBIN(10, "x") ' 非数値 -> #VALUE!

#NUM! は引数が範囲外であることを意味します。number_chosennumber より大きい (重複なしで 5 個から 10 個は選べません)か、負の値です。非整数の引数は数える前に整数に 切り捨て られ、非数値の引数は #VALUE! を返します。もし現実の問題が本当に n より多く 選ぶことを許すなら(重複が許されているから)、それは k ≤ n の制約を持たない COMBINAPERMUTATIONA に切り替える合図です。

ExcelMaster が役立つ場面

組み合わせ対順列は、自信満々で間違える典型的な場面です — 数式は動き、数はもっともらしく見え、 そして k! 倍だけずれている。ExcelMaster に「10 人のチームから 3 人で委員会を作る方法は 何通り?」と尋ねれば、順番が関係しないと見抜き、=COMBIN(10,3) を返し、なぜ PERMUT では なく COMBIN なのかを説明します。「6/49 の宝くじに当たる確率は?」と尋ねれば、 =COMBIN(49,6) を配線し、それを 13,983,816 分の 1 の確率に変えます。

よくある質問

Excel の COMBIN と PERMUT の違いは何ですか?

PERMUT順番が関係する 並べ方(表彰台、暗証番号、順位付け)を数え、COMBIN順番が関係しない 選び方(宝くじ、委員会)を数えます。同じ nk に対して、COMBIN は常により小さく — ちょうど PERMUTk! で割ったものです。「選んだ項目を並べ替えると 新しい結果になる?」と尋ねてください — はい → PERMUT、いいえ → COMBIN

Excel で組み合わせを計算するには?

=COMBIN(n, k) を使います。n は項目の総数、k は選ぶ個数です。=COMBIN(49, 6)13,983,816 — 順番が関係しないときに 49 個から 6 個を選ぶ方法の数 — を返します。同じ項目を 2 回以上選べるなら、代わりに COMBINA を使いましょう。

COMBINA と PERMUTATIONA は何のためのものですか?

「重複あり」版です。PERMUTATIONA(n, k) は、項目が繰り返せる順序付きの並べ方を数えます (数字が繰り返せる暗証番号は PERMUTATIONA(10,3) = 1000)。COMBINA(n, k) は、重複を許した 順序なしの選び方を数えます(10 種のフレーバーから、重ねてもよいアイス 3 すくいは COMBINA(10,3) = 220)。

COMBIN が #NUM! エラーを返すのはなぜですか?

引数が範囲外だからです — たいていは number_chosennumber より大きい(重複なしで 5 個から 10 個は選べません)か、引数が負です。もし問題が正当に、手持ちより多くの項目を選ぶ ことを許すなら(重複が許されているから)、COMBINAPERMUTATIONA に切り替えましょう。

COMBIN は小数を扱えますか?

非整数の引数は数える前に整数に 切り捨て られるので、=COMBIN(10, 3.9)=COMBIN(10, 3) と同じように振る舞い、120 を返します。混乱を避けるため、これらの関数には 整数を渡しましょう。

検証環境

検証環境: Excel 365 (Windows 11) — 最終確認 2026-07-26。

関連ガイド: Excel FACT (Factorial) · Excel PRODUCT · Excel POWER & SQRT · Excel RAND & RANDBETWEEN · Excel ROUND