スプレッドシートのCOMBIN関数の使い方|組み合わせ

スポンサーリンク

「10人から3人のチームを作ると、何通りあるんだろう?」

抽選やチーム分け、メニューの選択パターンなど、場合の数を数えたい場面って意外と多いですよね。手で計算しようとすると、数が大きくなるほど面倒です。

スプレッドシートのCOMBIN関数を使えば、2つの数を入れるだけで組み合わせの数がパッと出ます。

この記事では基本の書き方から実務で使える活用例まで紹介します。PERMUT関数FACT関数との関係もあわせて解説しますね。

スプレッドシートのCOMBIN関数とは?

COMBIN関数(読み方: コンビネーション関数)は、n個の中からr個を選ぶ組み合わせの数を返す関数です。

名前は英語の「combination(組み合わせ)」からきています。

数学の授業で習った「nCr」の計算をしてくれる関数ですね。

たとえば =COMBIN(10, 3) と書くと「10人から3人を選ぶ組み合わせ」を計算します。結果は「120通り」です。

ここで大事なのが、組み合わせとは選ぶ順番を考えない選び方だということです。

「AさんBさんCさん」と「CさんBさんAさん」は同じ1通りとして数えます。

COMBIN関数にできることをまとめると、次のとおりです。

  • 指定した総数から指定した個数を選ぶ組み合わせの数を計算する
  • チーム分けや班決めで何パターンあるか調べる
  • 抽選やくじ引きの当選確率の計算に使う
  • メニューやオプションの選択パターン数を求める

NOTE

COMBIN関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心ですよ。

COMBIN関数の書き方(構文と引数)

基本構文

=COMBIN(n, r)

カッコの中に「n(総数)」と「r(選ぶ個数)」の2つを入れます。

引数の説明

引数必須/任意説明
n必須全体の総数。0以上の整数を指定する
r必須選択する個数。0以上かつn以下の整数を指定する

10人から3人を選ぶなら、nが10、rが3です。

小数を指定した場合は小数点以下が切り捨てられます。

COMBIN関数の基本的な使い方

もっともシンプルな使い方

数値を直接指定するパターンです。

=COMBIN(5, 2)

結果は「10」です。5人から2人を選ぶ組み合わせは10通りですね。

=COMBIN(10, 3)

結果は「120」です。10個から3個を選ぶ組み合わせになります。

=COMBIN(6, 6)

結果は「1」です。6個すべてを選ぶ場合は1通りしかありません。

セル参照を使う

A1に総数「40」、B1に選ぶ個数「4」が入っているとします。

02 formula combin basic
=COMBIN(A1, B1)
03 result combin basic

結果は「91390」です。40人から4人を選ぶ組み合わせは91,390通りもあります。

セル参照を使えば値を変えるだけで結果が自動更新されますよ。シミュレーションにも便利です。

特殊なケース

選ぶ個数が0のとき、結果は「1」です。何も選ばないパターンは1通りという意味ですね。

=COMBIN(10, 0)

選ぶ個数が1のとき、結果は総数と同じになります。

=COMBIN(10, 1)

結果は「10」です。10個から1個を選ぶ方法は10通りです。

COMBIN関数の実践的な使い方・応用例

チーム分けのパターン数を調べる

20人の部署から5人のプロジェクトチームを作る場面を考えてみましょう。

=COMBIN(20, 5)

結果は「15504」です。15,504通りもの組み合わせがあります。

チーム編成の候補がこれだけあると分かれば、条件をつけて絞り込む判断材料になりますよね。

TIP

複数チームに分ける場合は、最初のチームの組み合わせ数だけでは足りません。全チームのパターン数は、順番にCOMBIN関数で計算して掛け合わせます。

品質検査のサンプル抽出数を計算する

100個の製品ロットから5個をサンプル検査する場合です。

何通りの選び方があるか確認してみましょう。

=COMBIN(100, 5)

結果は「75287520」です。約7,500万通りの中からランダムに5個を選んでいることが分かります。

サンプル数を増やすとどう変わるかも試してみましょう。

=COMBIN(100, 10)

結果は「17310309456440」です。サンプル数を10個に増やすだけで、組み合わせは桁違いに増えますね。

抽選の当選確率を計算する

宝くじの当選確率を求めてみましょう。45個の番号から6個を選ぶ場合です。

=COMBIN(45, 6)

結果は「8145060」です。約814万通りですね。

当選確率は次のように計算できます。

=1/COMBIN(45, 6)

結果は「0.00000012…」、つまり約814万分の1です。数字で見ると確率の低さが実感できますよね。

研修のグループ分けパターンを比較する

新人研修で12人を3人ずつのグループに分けたいとします。

最初のグループの選び方は次のとおりです。

=COMBIN(12, 3)

結果は「220」です。ここから残り9人で次の3人グループを作ると、こうなります。

=COMBIN(9, 3)

結果は「84」です。さらに残り6人から3人を選ぶとこうです。

=COMBIN(6, 3)

結果は「20」です。グループの順番を考えない場合の全パターン数はこのように求められます。

=COMBIN(12,3)*COMBIN(9,3)*COMBIN(6,3)*COMBIN(3,3)/FACT(4)

結果は「15400」です。ここで割っているFACT(4)がポイントです。4グループの並べ替え(4! = 24通り)を除外しています。グループに名前がなければ順番は関係ないので、この補正が必要になりますよ。

商品セットの組み合わせパターンを数える

10種類の商品から3種類を選んでセットにする場合です。

=COMBIN(10, 3)

結果は「120」です。120パターンのセットが作れますね。

同じ商品を2つ以上入れたい場合は、COMBINA関数(重複組み合わせ)を使ってみてください。

よくあるエラーと対処法

COMBIN関数で発生しやすいエラーをまとめました。

エラー原因対処法
#NUM!rがnより大きい(例: COMBIN(3, 5))選ぶ個数が総数以下か確認する
#NUM!n または r に負の数を指定した0以上の整数を指定する
#VALUE!引数に文字列が入っているセル参照先が数値かどうか確認する
#ERROR!構文ミス(カッコ忘れ・カンマ漏れ等)数式の入力内容を見直す

選ぶ個数が総数を超えているとき

もっとも多いエラーです。5人しかいないのに10人選ぶことはできませんよね。

=COMBIN(5, 10)

この数式は#NUM!エラーになります。nとrの指定が逆になっていないか確認してみてください。

引数に小数を指定したとき

小数を指定してもエラーにはなりません。小数点以下が切り捨てられて計算されます。

=COMBIN(5.8, 2.3)

この数式は =COMBIN(5, 2) と同じ結果で「10」を返します。意図しない切り捨てには注意しましょう。

COMBIN関数と似た関数との違い・使い分け

組み合わせや順列に関連する関数を表で比較します。

関数動作順番の区別重複
COMBIN組み合わせの数を返す区別しないなし
PERMUT順列の数を返す区別するなし
COMBINA重複組み合わせの数を返す区別しないあり
FACT階乗(n!)を返す

COMBIN関数とPERMUT関数の違い(組み合わせ vs 順列)

もっとも混同しやすいのがこの2つです。違いは選ぶ順番を区別するかどうかですね。

  • COMBIN関数(組み合わせ): 順番を区別しない。A,B,CとC,B,Aは同じ1通り
  • PERMUT関数(順列): 順番を区別する。A,B,CとC,B,Aは別の1通り

5人から3人を選ぶケースで比べてみましょう。

=COMBIN(5, 3)

結果は「10」です。組み合わせは10通りですね。

=PERMUT(5, 3)

結果は「60」です。順列は60通りになります。

順列(60)は組み合わせ(10)の6倍です。

選んだ3人の並べ方が3! = 6通りあるためですね。

使い分けのポイントは次のとおりです。

  • チーム分け・委員選び → COMBIN(誰を選ぶかだけが重要)
  • リレーの走順・座席の並び → PERMUT(順番も重要)

COMBIN関数とCOMBINA関数の違い(重複なし vs 重複あり)

COMBINA関数同じ要素を複数回選べる組み合わせ(重複組み合わせ)を計算します。

=COMBIN(5, 3)

結果は「10」です。5種類から3つを選ぶ(重複なし)パターンですね。

=COMBINA(5, 3)

結果は「35」です。5種類から3つを選ぶ(重複あり)パターンになります。

使い分けのポイントは次のとおりです。

  • 掃除当番を3人選ぶ → COMBIN(同じ人を2回選べない)
  • ドリンクを3杯注文する → COMBINA(同じドリンクを複数選べる)

COMBIN関数とFACT関数の関係

FACT関数は階乗(n!)を返す関数です。実はCOMBIN関数の計算結果はFACT関数で再現できます。

組み合わせの公式は「nCr = n! / (r! x (n-r)!)」です。

これをFACT関数で書くと次のようになります。

=FACT(10) / (FACT(3) * FACT(10-3))

結果は「120」です。これは =COMBIN(10, 3) と同じ結果ですね。

COMBIN関数はこの面倒な計算を1つの関数で済ませてくれます。通常はCOMBIN関数を使えば十分ですよ。

Excelとの違い

COMBIN関数はExcelとGoogleスプレッドシートで完全に同じ動作です。

項目ExcelGoogleスプレッドシート
構文=COMBIN(数値, 抜き取り数)=COMBIN(n, r)
動作組み合わせの数を返す組み合わせの数を返す
小数の扱い小数点以下を切り捨て小数点以下を切り捨て
エラー時#NUM! / #VALUE!#NUM! / #VALUE!

引数名の表記が若干異なるだけで、機能は完全に同じです。

ExcelのCOMBIN関数について詳しくは「ExcelのCOMBIN関数の使い方」をご覧ください。

まとめ

COMBIN関数は、n個の中からr個を選ぶ組み合わせの数を求める関数です。

ポイントを整理します。

  • 構文は =COMBIN(n, r) の2引数。組み合わせの数(nCr)を返す
  • チーム分けや抽選の確率計算など、「何通りあるか」を調べるときに便利
  • 品質検査のサンプル抽出や研修グループ分けなど、実務でも使える場面は多い
  • PERMUT関数(順列)との違いは、選ぶ順番を区別するかどうか
  • COMBINA関数は同じ要素を複数回選べる「重複組み合わせ」を計算する
  • FACT関数の階乗で同じ計算ができるが、COMBIN関数のほうがシンプル
  • ExcelのCOMBIN関数と完全に同じ動作で、互換性も安心

まずは =COMBIN(10, 3) で「10個から3個を選ぶ組み合わせ = 120通り」から試してみてください。

タイトルとURLをコピーしました