ExcelのINDEX関数とRANDBETWEEN関数で抽選アプリを作成

簡単に抽選アプリを作成

抽選アプリといえるほどのものではないけど、4000人くらいから、ランダムに人を抽出する仕組みを作ってくれと。

いつも、簡単でいいからと言われるけど。この簡単にって。ねぇ。

色々と仕様だししないといけないけど。ま、とりあえず片手間で簡単に考えてみました。

この記事でできる事

Excelを使ってランダム人を抽出する

抽選者氏名が1列に並んでいる

抽選者からランダムに名前を抽出する

抽選結果を関数で表す

INDEX関数

範囲の中から、指定された値を出す

=INDEX(範囲,上から何番目)

RANDBETWEEN関数

整数範囲の中から、ランダムに整数を返す

=RANDBETWEEN(数値1,数値2)

COUNTA関数

文字列を含めてセルに文字が入っていたらカウントする

=COUNT(範囲)

抽選関数

=INDEX(A2:A3632,RANDBETWEEN(1,COUNTA(A:A)-1))

解説1

COUNTA(A:A)-1

A列に入っているデータ数をカウントする

1行目に項目があり

連続した行にデータが入っている

連続したデータの最終行番号を取得する

解説2

RANDBETWEEN(1,COUNTA(A:A)-1)

1からデータのある最終の行番号の中で、ランダムに行番号を返す

解説3

=INDEX(A2:A3632,RANDBETWEEN(1,COUNTA(A:A)-1))

A2からA3632の範囲で、RANDBETWEEN関数で返された行を返す

再抽選

F9キーを押すと、再計算されます。

再計算されるとランダム関数の値が変わるので、抽選結果が変わります。

Excelを閉じて開き直しても同じです。抽選結果が変わります。