Microsoft Excelで乱数を生成する3つの方法
更新:2023年8月6日
Microsoft Excelは、データの保存や管理、表示を行う上で役立つ表計算ツールです。Excelには、グラフの作成、統計分析、ビジュアルデザイン要素の生成など、他にもさまざまな機能がありますが、あまり知られていないExcelの機能に、乱数の生成があります。
この記事では、Excelで乱数を生成する理由や方法について解説し、Excelで乱数を生成する上で役立つヒントをご紹介します。
Excelで乱数を生成する理由
Excelで乱数を生成することは、完全な客観性を確保できることから有用です。コンピュータの暗号化、ギャンブル(賭け事)、科学的モデリングなどの場面で役に立つことがあります。
たとえば、科学分野の職場では、計算プログラムに使用するシード値を生成するために乱数関数を使用することがあります。この統計的処理によって、計算に必要な乱数を生成できます。シード値の乱数を生成することで、計算に偏りが生じるのを防ぐことができます。
また、乱数ジェネレーター(乱数生成器)を使うことで、客観性を高めることができます。たとえば、会議室にいる全員に番号を割り当てておき、会議の議事録担当や、軽食手配担当者などを決めるために乱数ジェネレーターを使うことができます。
Excelで乱数を生成するには
Excelで乱数を生成する方法はいくつかありますが、まず、整数と小数のどちらを生成するかを決めます。その後の手順は以下のとおりです。
0~1の間で乱数(小数を含む)を生成する
0~1の乱数を生成するには、ExcelのRAND式を使用します。この計算式を使用することで、ランダム性が高く、かつユニークな小数を生成することができます。つまり、乱数をまとめて生成する場合でも、同じ数値が生成される可能性は低くなります。手順は次のとおりです。
乱数を表示するセルをクリックします。
計算式「=RAND()」を入力します。
Enterキーを押します。
指定範囲内で小数の乱数を生成する
RAND関数を使用して、指定範囲内で小数の乱数を生成することができます。手順は次のとおりです。
乱数を表示するセルをクリックします。
計算式「=RAND()*([上限値]-[下限値])+[下限値]」を入力します。たとえば、1~10の範囲で小数の乱数を生成する場合は、「=RAND()*(10-1)+1」と入力します。
Enterキーを押します。

指定範囲内で整数の乱数を生成する
ExcelでRANDBETWEEN関数を使用して、1より大きな乱数を生成することもできます。この関数では、意図する範囲の上限値と下限値を入力すると、指定値の範囲で整数の乱数が生成されます。この方法では、RAND法よりも生成が繰り返される可能性が高くなる場合があります。この方法を使用して乱数を生成する手順は次のとおりです。
乱数を表示するセルをクリックします。
計算式「=RANDBETWEEN([最小値],[最大値])」を入力します。たとえば、1~10の範囲で乱数を生成する場合は、「=RANDBETWEEN(1,10)」と入力します。
Enterキーを押します。
Excelで乱数を生成するためのヒント
Excelで乱数を生成する際に役立つヒントをご紹介します。
値を設定する
RAND式またはRANDBETWEEN式を使用して乱数を生成したら、Excelでセルの値を計算するたびに、そのセルに入力した数値が更新されることがあります。たとえば、F9キーを押したときや、ツールバーの数式タブの計算方法セクションにある「計算再実行」または「シート再計算」を選択した場合などです。また、スプレッドシートの別の場所にセルを移動した場合や、スプレッドシートの別の場所で変更を加えた後にEnterキーを押した場合にも、新たな乱数が生成されることがあります。
生成した乱数の値を一定に保つ場合は、当該セルを選択し、数式バーをクリックしてF9キーを押します。これで、表示されていた計算式が、数式バーで生成した数値に置き換わります。ま
た、値を設定するセルを選択し、「値」の貼り付けオプションを使ってコピーし、別の場所に貼り付けて、RAND式やRANDBETWEEN式ではなく、生成した乱数の値のみを貼り付けることもできます。
乱数リストを生成する
RAND式またはRANDBETWEEN式を使用して1つのセルに乱数を生成したら、数式を拡張して、行または列全体に適用することができます。計算式が入力されているセルをクリックし、右下隅にマウスカーソルを合わせます。マウスのアイコンが白い+記号から黒い+記号に変わったら、マウスをクリックしたまま、セルに沿ってカーソルを横方向または下方向にドラッグします。
マウスを離すと、指定のセルに乱数が自動生成されます。また、最初に横方向にドラッグしてから、縦方向に範囲を広げることで、大きな長方形のセル範囲に拡大できます。
乱数のリストに重複がないかチェックする
一意の値の乱数リストを生成する必要がある場合は、リストに重複がないかどうかをチェックすることをおすすめします。RAND式で重複が生じることはほとんどありませんが、RANDBETWEENの方が重複する可能性が高いでしょう。
重複の有無は、RANK関数を使用して確認することができます。まず、乱数のリストを、上記のいずれかの方法で計算式の値から数値に変換します。次に、計算式「=RANK.EQ([最初のセルの文字][最初のセルの番号],$[最初のセルの文字]$[最初のセルの番号]:$[最後のセルの文字]$[最後のセルの番号],昇順か降順かを
決める数値)」を入力します。
Enterキーを押して、上記のようにリストの範囲を拡張して、乱数リストの範囲と一致させます。たとえば、A1~A10までの列に乱数リストがある場合、セルB1に「=RANK.EQ(A1,$A$1:$A$10,1)」というRANK式を入力し、セルB1~B10に展開します。RANK列の各セルには、最高順位が1、最低順位が9というように、数字の順位が含まれている可能性があります。すべてのセルに独自の順位が指定されている場合は、リストに重複がないこ
とになります。

乱数の配列を生成する
Microsoft 365やMicrosoft Excel 2021を使用している場合は、RANDARRAY関数を使って、複数のセル
に対して0から1の小数の乱数を配列として生成できます。この関数を使用するには、「=RANDARRAY([行数],[列数], [下限値],[上限値])」と入力します。たとえば、3行6列の乱数配列を生成する場合は、配列の左上のセルをクリックして、=RANDARRAY(3,6,10,20)と入力します。この配列に10~20の数値を含む場合は、=RANDARRAY(3,6,10,20)と入力します。
RANDARRAY関数は、指定範囲内の小数を自動的に生成します。整数値を生成する場合は、関数の最後にTRUEというコマンドを追加します。たとえば、上記の配列では、10~20の間の小数を生成できますが、10〜20の整数を生成する場合は、 =RANDARRAY(3,6,10,20, TRUE)と入力します。
本記事で紹介されている企業は、Indeed と提携しておりません。
こちらの記事もおすすめです
- Excel(エクセル)で作成したデータを画像化して保存する方法は?うまくいかないときの対処法も紹介
- インテグレーションとは?言葉の意味やビジネスでの使用例、関連用語も解説
- 【アンケート】夏と冬の長期休暇は何日間?長期休暇の過ごし方は?
- 【明日から使える】要領をよくするためのポイント5選
- 自分自身の倫理規範を定めるには(例文付)
- 大学生の貯金の平均はいくら?効率良く貯める方法も解説
- 重複とは? 読み方や意味、適切な使い方を解説(例文付き)
- 目指すは在宅ワーカー!職歴や資格がない人がまずやるべき3つのこと
- 夜勤で働くための準備のコツ
- 【例文付き】頭打ちとは?ビジネスでの意味と使い方!類義語も紹介
- 入社半年でも仕事に慣れない理由とは?対策やストレス解消法をご紹介
- 「それでは」は敬語?ビジネスシーンでの使い方や例文を紹介