FACT 関数は階乗(5×4×3×2×1 のような掛け算)、PERMUT 関数は順列(いくつか選んで順番を付ける並べ方の数)を求める関数です。5 人の並び方は =FACT(5)、5 人から 3 人を選んで 1 位・2 位・3 位を決める並べ方は =PERMUT(5,3) で出ます。
この記事では、FACT・PERMUT の使い方と、順番を気にしない組み合わせ(COMBIN)との違いを、実際の Excel で確かめた結果で説明します。
FACT・PERMUT 関数の書き方
=FACT(数値)
=PERMUT(全体の数, 選ぶ数)
=PERMUTATIONA(全体の数, 選ぶ数)
| 引数 | 意味 |
|---|---|
| 数値 | 階乗を求める数(0 以上) |
| 全体の数 | 選ぶもとの数 |
| 選ぶ数 | その中から選ぶ数(PERMUT は全体の数以下) |
PERMUT は同じものを 2 回選ばない並べ方、PERMUTATIONA は同じものを何回選んでもよい並べ方です。
1. 5 人の並び方(階乗)を出す
5 人を 1 列に並べる並び方は 5×4×3×2×1 です。
=FACT(B2)

結果は 120 通りでした。
2. 5 人から 3 人選んで順番を付ける(順列)
5 人から 3 人を選び、1 位・2 位・3 位を決める並べ方です(5×4×3)。
=PERMUT(B2,B3)

結果は 60 通りでした。
3. 順番を気にしない組み合わせ(COMBIN)とくらべる
3 人を選ぶだけで、順番は気にしないなら COMBIN を使います。
=COMBIN(B2,B3)

結果は 10 通りで、順列(60)の 1/6 です。選んだ 3 人の順番の付け方が 3×2×1=6 通りあるためです。確率の計算は 確率を計算する方法で説明しています。
4. 同じ数字を使ってよい暗証番号の数(PERMUTATIONA)
0〜9 の 10 個の数字から、同じ数字を何回使ってもよい 4 けたの番号の数です。
=PERMUTATIONA(10,4)

結果は 10000 通り(0000〜9999)でした。同じ数字を使わないなら =PERMUT(10,4) で 5040 通りです。
【実機で検証】PERMUT でつまずくところ

| ためしたこと | 式 | 結果 |
|---|---|---|
| 0 の階乗 | =FACT(0) | 1 |
| マイナス(-1)の階乗 | =FACT(-1) | #NUM! |
| 小数(3.7)の階乗 | =FACT(3.7) | 6 |
| 選ぶ数が全体より多い(3 から 5) | =PERMUT(3,5) | #NUM! |
| 171 の階乗 | =FACT(171) | #NUM! |
| PERMUT(5,3)÷FACT(3) | =PERMUT(PERMUT!B2,PERMUT!B3)/FACT(PERMUT!B3) | 10 |
| 同じ数字を使わない 4 けた | =PERMUT(10,4) | 5040 |
0 の階乗は 1 でした(決まりで 1 になります)。マイナスの -1 は #NUM! になりました。小数の 3.7 は 3 として計算され 6 です。
選ぶ数が全体の数より多いと #NUM! になりました。171 の階乗は大きすぎて #NUM! です。
PERMUT(5,3) を 3 の階乗で割ると 10 で、COMBIN(5,3) と同じになりました。「組み合わせ=順列÷選んだ数の階乗」の関係です。
よくある質問
くじの当たる確率を出したいときは?
「当たりの組み合わせ÷全体の組み合わせ」で出します。くわしくは 確率を計算する方法で説明しています。
実際の並べ方を一覧にしたいときは?
PERMUT は数を出すだけです。抽選や並べ替えをするなら RANDARRAY 関数と SORTBY でランダムに並べる方法があります。
大きな数で #NUM! になるときは?
FACT は 170 まで計算できます。それより大きいと Excel で扱える数をこえて #NUM! になります。

コメント