http://pc.nikkeibp.co.jp/article/NPC/20070118/259055/?rt=nocnt
パーティーの余興には欠かせないビンゴゲーム、ご存じですよね。参加者がカードを持って見守るなか、ビンゴマシンで数字を抽選します。出た数字が手持ちカードと合致すれば参加者はその数字部分に穴を開けます。カード上の穴が縦、横、斜めのいずれかがそろえば「ビンゴ!」と叫んで賞品がもらえる、そんなゲームです。
数字を抽選するビンゴマシンは繰り返し使えますが、ビンゴカードは消耗品です。しかもカードの数字は1枚1枚すべて異なる並びになっていますからExcelで作ってみましょう。
よく見かけるルールは1から75までの数字を使います。1枚のカードに5×5の25の升目があって、真ん中の升目は無条件で開くことができます。都合、並んでいる数字は24個です。カード上の並びは“なんとなく左が小さく右が大きい”感じです。
Excelでランダムな数字を作るのはRAND関数です。図1のB列に75個の乱数を発生させました。B列の数値を1つずつ、RANK関数を使ってその値が75個のなかで何番目に大きいかを求めたのがC列です。これで1から75のうちの24個が選べました。
さて、ビンゴカード上で“なんとなく左が小さく右が大きい”を実現しましょう。まずD列でSMALL関数を使って小さい順に並び替えました。D列の上から5個はビンゴカードの1列目、次の5個は2列目、というふうに決め、各列内でシャッフルしましょう。E列にはビンゴカード内の並び順をB列の乱数を使って求めました。D列の数字をE列の順序に並び替えたのがF列です。