2026年2月2日(月)放課後、学びプロジェクト「Excelを使って『席替えくじ』を作ろう」を行いました。6名の中学1年生の皆さんが参加してくださいました。
この記事では、作り方をご紹介します。お家でやってみてくださるとうれしいです。
Excel、Numbers、Spreadsheetの機能に「乱数」を作るという機能があります。今回は、Excelを使って「乱数」に順番をつけて、画面上でくじ引きを作ってみました。私はこれでクラスの席替えをしています。今回の内容はすでに何らかのアプリでできるという生徒さんが、全校に何人もいらっしゃいます。
ゴールはこの画面です。人名など文字で入力されたものを「文字列」と呼び、B列に入力されたデータとG列1行目「座席表」が文字列です。それ以外は「数値」と「関数」が入力されています。
A列 - 名簿番号
B列 - 名前(今回は架空の名前を入力)
D列 - 乱数を発生させる(コンピュータのくじ引きの本質)
E列 - 乱数の順序(大→小)を自然数(1、2、3、4、5)で表示する
G列 - E列の順を名簿番号と対応して、名前を表示する
Excelでは枠に区切られた場所を「セル」と呼びます。英語で細胞という意味です。「座席表」と書いてあるのは「G1」セルと呼びます。私たちはこのセルに文字列、数式、数値を入れていきます。

A列、B列に入力後、D列には「=RAND()」と入力します。実際は途中までアルファベットを入力すると、下図のようなフキダシが出てきて、候補の関数を示してくれるのでその中から「RAND」を選択すると操作が早くなります。ちなみに、小文字で入力しても勝手に大文字に直してくれます。

E列の入力もひと工夫すると、入力の手間が省けます。一旦、入力してみましょう。
E2セルに「=rank」と入力する途中、フキダシに「=RANK」と候補の数式が表示されますのでそれを選択します。E2セルには「=RANK(数値,参照,順序)」と表示されます。
方法①「数値」をタップしてからB2をタップする、あるいは方法②キーボードで「=RANK(D2, D2:D6, 0)」(この数式にほんとうは空白はなく、またすべて小文字入力でもよいのですが、HP記事の見やすさの都合上、空白を入れて大文字で表記しています)と入力します。続けて、方法①「参照」をタップしてD2:D6を選択する、または方法②で順に入力していきます。それぞれの用語の意味は以下のとおりです。
-
最初のD2は、この数値(下の写真では「0.432457」)と全5つの数値と比べて何番目に大きいかを調べるという指定です。
-
次の「D2:D6」は全5つの数値が書かれているセルの場所を示しています。
-
3つ目の「順序」には「0」を入力してください。これは、降順(D2が上から何番目)で表示するという意味です。昇順(下から何番目)のときは「1」を入力します。


ところで、このままE2の数式をE3からE7までコピー・ペーストすると、面倒なことが起きてしまいます。
青の表示は、E2 → E3 → E4 → E5 → E6 → E7と1つずつ下にずれていくのでよいのですが、赤の表示D2:D7はずれると数値の表から外れていってしまい、困ってしまいます。そこで、赤の表示「D2:D7」を「$D$2:$D$7」へ変更します。パソコンでの操作は、単純に「$」を入力していけばよいのですが、タブレットでは、「D2:D7」をタップして、フキダシを出して「参照の種類」→「$D$2:$D$7」を選んでください。




E2セルにこの数式が入力された状態をコピーしで、E3からE7へペーストしてください。
これで6人のくじ引きが完成しました。

E列には、D列の小数の大きい順に順位(Rank)がついています。これが「くじ引き」の結果に相当するわけです。画面上部のタブを「ホーム」から「数式」変えると「再計算」アイコン(電卓のアイコン)があり、それをタップするたびに、乱数が変化していきます。くじ引きをやり直している操作にあたります。
この後、座席が割り当てられて、さらに手書きやExcelへの直接入力でクラスの座席表を作成しています。実はこの作業もExcelの数式を使って自動で割り当てることが可能です。
次の記事では、座席表(G列)に名前を割り当てる「Vlookup関数」という数式を使う操作をご紹介します。
(数学科 園田毅)



