こちらの記事では、乱数を利用して応募者の中からランダムに当選者を決める方法をご紹介していきます。
なお、当サイトでは Excel ではなく Numbers を使って解説しています。
目次
乱数を割り当てる
乱数とは、規則性のない値のことで、RAND 関数を使って無作為に数値を設定することができます。
RAND 関数 の式の確認
RAND 関数には引数は必要ありません。
= RAND ( )
Step 1
まず RAND 関数を入力します。セルにカーソルを合わせ、「= RAND( )」と入力するか、「挿入」メニューから「新規数式」を選択します。
「数値」から RAND を選択するか、検索窓に「RAND」と入力しても探すことが出来ます。「関数を挿入」をクリックします。
Step 2
RAND 関数は引数が必要ありませんので、このまま Enter を押して式を反映させます。
Step 3
黄色のハンドルを下にドラッグしてセルを自動入力させます。
入力結果
指定した条件の通りになっているか確認しましょう。
乱数を利用して、条件を設定する
さきほどの RAND 関数で表示させた乱数を利用して、最も大きい値の人が当選するように計算式を入力していきます。
IF 関数 で 条件を指定する際に、LARGE 関数 を使って一番大きい値を選び、当選者を決めるようにしてみましょう。(最も小さい値を選ぶ場合は、SMALL 関数 を使います)
RAND 関数 | 0 以上 1 未満 の実数で乱数を発生させる |
IF 関数 | 条件を指定して処理を分ける |
LARGE 関数 | 上位の数値を求める |
IF 関数の式の確認
条件を満たすときを「TRUE(真)」、満たさないときを「FALSE(偽)」といいます。
= IF ( 条件式 , 値が真の場合 , 値が偽の場合 )
LARGE 関数の式の確認
LARGE 関数は、セル範囲「数値群」を指定して上位○位の数値を返します。
= LARGE ( 数値群, 順位 )
数値群 | 数値のセル範囲または配列定数 |
順位 | 大きいほうから数えた順位を、1以上で指定 |
IF 関数 と LARGE 関数を組み合わせる
Step 1
「当選」の列のセルにカーソルを合わせ、「論理と情報」から IF を選択するか、検索窓に「IF」と入力しても探すことが出来ます。「関数を挿入」をクリックします。
乱数のセルの中で最も大きい値の場合に「○」を表示させる、という計算式になります。
= IF ( D2 >= LARGE ( D2:D11, 1 ) , “◯” , ” ” )
※ 文字列を表示させる場合は ” ◯ ” のように「”」で囲みます。
Step 2【重要】参照範囲を固定する
他のセルに関数をペーストしたときに参照範囲がずれないように、絶対参照と相対参照を設定します。
・絶対参照:参照先のセルを固定
・相対参照:参照先のセルが数式に連動して変化
関数の中で指定しているセルの部分の「▼」をクリックすると設定窓が開きますので、チェックボックスにチェックを入れます。
範囲の開始と終了をそれぞれ設定することができ、チェックを入れると「$」のマークがつきます。
= IF ( D2 >= LARGE ( $D$2:$D$11, 1 ) , “◯” , ” ” )
Step 3
Enter を押して式を反映させたら、黄色のハンドルを下にドラッグしてセルを自動入力させます。
入力結果
指定した条件の通りになっているか確認しましょう。