「StiLL」Excel情報470 関数--複数の選択肢の中から無作為に選ぶ
■RANDBETWEEN関数とINDEX関数を使って、複数の選択肢の中から無作為に選ぶ方法をご紹介します。今日のランチを決める際や社員名簿から担当者を選ぶ際に使用すると便利です。 ☆対応方法:指定した範囲の中からランダムな整数をRANDBETWEEN関数で表示します。1つ目の引数には乱数の最小値、2つ目の引数には乱数の最大値を整数で設定します。 ※ご参考までに:Excel2003以前のバージョンで使う場合は、「ツール」→「アドイン」をクリックし、「分析ツール」にチェックを付けて使用します。チェックを付けずに使用すると、正常に数値が表示されません。(エラー値「#NAME? 」が表示されます)
今回はRANDBETWEEN関数とINDEX関数を使って、複数の選択肢の中から無作為に選ぶ方法をご紹介します。
※INDEX関数の使い方は、以下のバックナンバーをご参照ください。
【バックナンバー027】 関数--INDEX関数、コンボボックスの作り方
【バックナンバー255】 関数--INDEX関数、コンボボックスの作り方 Excel2007版
■RANDBETWEEN関数とは
指定した範囲内の整数をランダムに抽出する関数です。
「F9キー」を押して手動で再計算したり、他のセルに値を入力してワークシートが再計算されたりすると、
RANDBETWEEN 関数を使うすべての数式に対して新しい乱数が生成されます。
数式: =RANDBETWEEN(乱数の最小値,乱数の最大値)
 
   
例: 2から5の範囲内の数字を1つ抽出→ =RANDBETWEEN(2,5)
例えば「今日のランチは何にしようか?」とお悩みの場合、下記のようにして決めるのはいかがでしょうか?
「ランチ候補」を入力したテーブルと、「今日のランチ」を表示するセルを作成。
C2セルに下記数式を入力
=INDEX(A2:A11,RANDBETWEEN(1,10))  
   
 「F9キー」を押して再計算すると・・・
再計算されるたびにC2セルは変更されます。
■ご参考
選択肢を増やす場合、あらかじめ「ランチ候補」をテーブル化しておけば、
「ランチ候補」追加しても数式を修正する必要はなくなります
※テーブル機能の使い方は、以下のバックナンバーをご参照ください。
【バックナンバー268】 挿入--「テーブル」--Excel2007の新機能
C2セルに下記の数式を入力
=INDEX(テーブル1,RANDBETWEEN(1,ROWS(テーブル1)))    
「ランチ候補」に「蕎麦処えびす」を追加し、F9キーを押すと・・・
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます