【Excel】RAND関数を使ってランダムで担当を決める方法

Excelでは、RAND関数を活用することで、ランダムに掃除当番などの業務担当を決めることができます。恣意性を排除して順番決めをしたい場合などに役に立ちます。

目次

RAND関数を使ってランダムで担当を決める方法

あらかじめ、順番を決める担当者のリストを用意します。この担当者のリストから右側の担当日に名前を表示させるようにします。

まず担当者のリストの左に乱数と順位という列を追加します。左に追加する理由はこの後VLOOKUP関数を使った検索を行い、名前を表示させるためです。VLOOKUP関数は検索対象が一番左にないといけないという制限があるため、名前の左に検索範囲が来るようにします。

乱数の列にRAND関数を使って乱数を生成します。

RAND()
引数なしで使用し、ワークシートが再計算されるたびに0以上1未満の乱数が生成される。

これを下にコピーし、1人1人に乱数を割り当てます。

次に順位の列にRANK関数を使って乱数に基づき順位を表示させます。

RANK(数値,参照,[順序])
指定した「数値」が参照した範囲内で何番目の大きさかを示す。
順序では、「0」を指定すると降順(大きい順)、「1」を指定すると昇順(小さい順)の順位を示す。

一つ目の引数には左の乱数を選択し、2つ目の引数には乱数全体を選択します。この際、乱数全体は絶対参照にします。最後に順序は降順の0を指定しますが、昇順で1を指定しても問題ありません。

=RANK(A3,$A$3:$A$17,0)

これで、担当者の乱数に対応する番号が表示されます。

下にコピーし、すべての担当者の順位を表示させます。

この順位に基づき、VLOOKUP関数を使って担当日の表に表示させます。担当日の表に順番という列を追加し、上から連番を入力します。この連番が左の表の順位と対応します。

あとは名前の列に、VLOOKUP関数で、検索値を順番、検索範囲を順位と名前、列番号を名前の2列目を指定します。

=VLOOKUP(F3,$B$3:$C$17,2,FALSE)

これで、順位に対応する名前が表示されます。

この順番はF9でシートを再計算するたびに更新されます。順番を固定する場合は、乱数の列をコピーし、「Ctrl+Shift+V」で値で貼り付けを行います。

そうするとRAND関数がなくなるので、乱数は更新されなくなります。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Junyaと申します。都内のコンサルティングファームで働いております。まだまだ若輩者ですが、私の得た経験や感じたことを本ブログで紹介できればと思います。
Xで更新情報をお届けします。是非フォローしてください。

コメント

コメントする

目次