全913文字
PR

 電車にある4人掛けの座席をイメージしてもらいたい。8人のグループがこの4人掛けの座席を2組利用する。ただしその際、誰がどの席に座るのか、くじで公平に決めたい。もっとも、ここで用いるのは紙に書いたくじではなく、もちろんExcelだ。さて、あなたならどのような方法を取る?

意外に難しい席順の決め方

 席順を決めるなど、ごく簡単のように思える。ところが、やり方を考え出すと、意外に難しかったりする。解く方法はいくつも考えられるが、ここではシンプルな方法の1つを紹介したい。

 まず、8つの座席について1~8の番号を振る。次に、0以上1未満の値をランダムに発生させるRAND関数で乱数を発生させる。さらにRANK.EQ関数を用いて乱数の順位を大きい順に特定し、これを座席番号にする。手順は下記の通りだ。

RAND関数 数学/三角関数

=RAND()

 0以上で1より小さい実数の乱数を返す。ワークシートが再計算されるたびに、新しい乱数が返る。

RANK.EQ関数 統計関数

=RANK.EQ(数値, 参照,[順序])

 指定した数値が、指定した範囲の何番目に位置するかを返す。

①数値 順位を調べる数値を指定する。
②参照 セル範囲を指定する。①数値がこの範囲の中の何番目に位置するかを調べる。
③順序 セル範囲の数値を降順か昇順で並べるのかを指定する。降順は省略か「0」、昇順は「0」以外の数値を指定する。
メンバーの名前をA列に入力した。B2には「=RAND()」と入力する。RAND関数は引数を持たないシンプルな関数だ。この数式をB9までオートフィルすると個々のセルに乱数が発生する。オートフィルがうまくいかない場合、「ファイル」タブ→「その他」→「オプション」の「数式」にある「計算方法の設定」で、「自動」にチェックが入っているか確認する。「手動」にチェックが入っているとうまく作動しない
メンバーの名前をA列に入力した。B2には「=RAND()」と入力する。RAND関数は引数を持たないシンプルな関数だ。この数式をB9までオートフィルすると個々のセルに乱数が発生する。オートフィルがうまくいかない場合、「ファイル」タブ→「その他」→「オプション」の「数式」にある「計算方法の設定」で、「自動」にチェックが入っているか確認する。「手動」にチェックが入っているとうまく作動しない
[画像のクリックで拡大表示]
手動で乱数を発生させる方法もある。[F9]キー(機種によっては[Fn]+[F9]キー)を押してみよう。キーを押すごとに再計算される。また、キーを押し続けると、乱数が次々と発生する
手動で乱数を発生させる方法もある。[F9]キー(機種によっては[Fn]+[F9]キー)を押してみよう。キーを押すごとに再計算される。また、キーを押し続けると、乱数が次々と発生する
[画像のクリックで拡大表示]