エクセルで作業しているとき、ランダムな数字をパッと出したいことってありますよね。でも、いざエクセルで乱数を発生させようと思うと、どんな関数を使えばいいのか迷ってしまうかもしれません。範囲指定して整数の乱数を作りたいときや、重複しない数字を出したいとき、さらには出した数字が勝手に変わらないように固定したいときなど、ちょっとしたコツを知っているだけで作業効率がぐんと上がりますよ。私もエクセルを使い始めた頃は、RAND関数やRANDBETWEEN関数の違いがわからず戸惑った経験があります。この記事では、エクセルで乱数を扱うための基本的な方法から、実務で使えるちょっとした応用テクニックまで、私が普段やっている方法を分かりやすくお伝えしますね。これさえ読めば、もうエクセルの乱数で悩むことはなくなるかなと思います。

- エクセルで乱数を発生させる2つの基本関数の違い
- 指定した範囲内で整数の乱数を作る具体的な手順
- 被らない重複しない乱数を作るための裏技的テクニック
- 生成した乱数が再計算で変わらないように固定する方法
エクセルで乱数を発生させる基本の関数
エクセルでランダムな数字を作りたいとき、まずは基本となる2つの関数を押さえておきたいですね。用途によって使い分けるのがポイントなので、ここではそれぞれの特徴をわかりやすく解説します。
0から1の小数を出すならRAND関数
エクセルで一番シンプルに乱数を作れるのが、RAND(ランド)関数です。セルに「=RAND()」と入力するだけで、0以上1未満のランダムな小数を表示してくれます。
カッコの中には何も入力しなくて大丈夫です。例えば「0.45892…」のような細かい数字が出てくるので、ただ何かの確率のシミュレーションをしたいときや、後で紹介する「重複しない乱数」を作るときのベースとして大活躍してくれますよ。
豆知識:再計算について
RAND関数は、エクセル上で何かしらの操作(文字の入力や削除、ファイルの保存など)をするたびに、自動的に新しい数字に再計算されます。「さっきの数字が変わっちゃった!」と焦るかもしれませんが、これが正常な動きなので安心してくださいね。
範囲指定して整数を出すならRANDBETWEEN関数
実務でよく使うのは、こちらのRANDBETWEEN(ランドビトゥイーン)関数かなと思います。この関数は、「1から100まで」のように、自分で指定した範囲の中からランダムな「整数」を出してくれる優れものです。
使い方は「=RANDBETWEEN(最小値, 最大値)」のように入力します。たとえば、サイコロのように1から6の数字を出したい場合は、セルに「=RANDBETWEEN(1, 6)」と入力します。これだけで、毎回1〜6のどれかが表示されるようになります。
ここがポイント!
抽選会のくじ引き番号や、テストのダミーデータを作りたいときには、RANDBETWEEN関数を使うのが一番手っ取り早くておすすめです。
エクセルの乱数で重複しない(被らない)数字を作る方法
RANDBETWEEN関数は便利なんですが、何度も発生させていると「同じ数字(重複)」が出てしまうことがあります。グループ分けやプレゼントの抽選などでは、同じ数字が出ると困りますよね。実は、関数を少し組み合わせるだけで、被らない乱数を作ることができるんです。
RANK.EQ関数と組み合わせて一意の整数を作る
重複しない整数を作るための裏技は、「RAND関数」で作った小数に対して、「RANK.EQ関数」で順位をつけるという方法です。小数が完全に一致する確率は天文学的に低いので、この性質を利用します。
具体的な手順は以下の通りです。少しややこしく見えるかもしれませんが、順番にやっていけば簡単ですよ。
| ステップ | 作業する列(例) | 入力する内容 | 目的と意味 |
|---|---|---|---|
| 1 | A列(A2~A11) | =RAND() | まずはランダムな小数(乱数)を10個作ります。 |
| 2 | B列(B2) | =RANK.EQ(A2, $A$2:$A$11) | A2の数字が、A列全体の中で「何番目に大きいか」の順位を出します。 |
| 3 | B列をオートフィル | (B2をB11までコピー) | 1位から10位まで、1から10の重複しない整数がきれいに並びます! |
この方法なら、何人分のデータであっても、絶対に被らない連番の乱数を作ることができます。RANK.EQ関数で範囲を指定するときは、必ず「$(絶対参照)」をつけて範囲がズレないようにするのが成功の秘訣です。
注意点:厳密な抽選における取り扱い
エクセルの乱数はとても便利ですが、プログラムによって生成される「疑似乱数」であるため、学術的・統計的に完全に偏りがないとは言い切れません。ここで紹介している数値データや手法は、あくまで一般的な目安として捉えてください。高額な賞品が当たる抽選や、読者の皆様の人生や財産に影響を与える可能性のある重要な用途で使用する場合は、正確な情報は公式サイトをご確認いただき、最終的な判断は専門家にご相談いただくことをおすすめします。
エクセルで発生させた乱数を固定(値の貼り付け)する方法

関数を使って無事に乱数を作れたのはいいけれど、別のセルを編集した瞬間に数字がコロコロ変わってしまって、「あーっ!」となった経験はありませんか?最後に、作った数字をそのまま固定する方法をご紹介します。
再計算を止めて乱数を確定させる手順
エクセルの関数による再計算を防ぎ、現在の数字をそのままの状態で固定するには、「値として貼り付け」という機能を使います。これを知っておくだけで、エクセル操作のストレスがかなり減ると思いますよ。
手順はとてもシンプルです。
乱数を固定する3ステップ
1. 固定したい乱数が入っているセル(または範囲)を選択して、右クリックから「コピー」します。2. そのまま同じ場所で右クリックをします。3. 貼り付けのオプションから、「値(123と書かれたアイコン)」を選んで貼り付けます。
これで、セルの中身が「数式(関数)」から「単なる数字」に変換されるため、どれだけ別のセルを編集しても数字が変わらなくなります。
もし、元の関数が入った状態も残しておきたい場合は、別の列に「値として貼り付け」を行って、データをバックアップしておくのも良い方法ですね。エクセルで乱数を扱うときは、この「固定する」作業がセットになることが多いので、ぜひセットで覚えてみてください。
