EXCEL で1~20まで、適当に番号を採番できないだろうか?
例えば、くじ引き、抽選会、ビンゴ大会などで、無作為で数値を決めるような手段をとることが場合によってはあります。
EXCEL で乱数の関数を使って番号を採番すると、ダブルこともあったり、、、
アプリ開発では、このダブりのためにかなり労力が必要で、、、
1から20までの乱数を発させてみると、
ダブったときの件数を確認すると、、、かなりの件数が該当。
ダブったとき、再度乱数発生させて、、、
いろいろ考えていたら、最初に発生させた乱数が別な数値に代わって、、、このやり方では、先が長そうなことに。。。
ーーー
別な関数を調べると、なんだか良さげなrank関数。いわゆるランキングみたいな順位付けで、発生した乱数を順位付けしたらきれいに並ぶんじゃない?それも、小数点以下を長めにとってみたら、ダブルことって稀でrank関数がうまくやってくれるんじゃない。。。(希望的観測)
再度、1~20まで採番することで、0から1までの間で小数点以下6位までの数値で乱数を発生させてみた。
乱数をrank関数で順位付けすると、ダブりを気にすることもないので、採番できました。ただし、何かのきっかけでこの乱数は再度発生してしまうので、数値が大きく変動することがあります。
一度発生した乱数の値を別な列にコピーすることで解決できます。