Excelでリストから乱数を生成する(4つの方法)

  • これを共有
Hugh West

Excelのリストから乱数を抽出するための適切なまたは単一の関数はありませんが、データの与えられたリストから乱数を生成するために別の関数の助けを借りて手動で数式を構築する方法は数多くあります。 この記事では、適切な図解とセルの範囲から乱数を引き出すためのすべての利用可能な方法を学ぶことを得ることができます。

練習用ワークブックをダウンロードする

この記事の作成に使用したExcelワークブックをダウンロードすることができます。

リストからの乱数取得.xlsx

Excelでリストから乱数を生成する4つの適切な方法

1.INDEX関数とRANDBETWEEN関数を使ってリストから乱数を取得する

があります。 INDEX 関数は、指定された範囲内で、特定の行と列の交点にあるセルの値または参照を返します。 ランドビュートゥエン RANDBETWEEN関数は、指定された2つの数値の間の乱数を返します。 第2引数にRANDBETWEEN関数を使用することで (行番号) のINDEX関数を使えば、リストからランダムな値や数を取り出すことができます。

次の写真では B列 は、10個の整数値を順番に並べたものです。 セルD5 の場合、リストから乱数を抽出する。

出力に必要な数式 セルD5 になります。

=index($b$5:$b$14, randbetween(1, 10))

を押した後 入力 のリストにある数値のいずれかを返します。 B列 .

さて、もっと乱数を出したい場合は フィルハンドル からの塗り潰しオプション セルD5 での乱数が多くなります。 D列 しかし、繰り返される値を乱数として見たくない場合は、どの値も2回以上表示しないように数式が定義されている方法4に移行することができます。

続きを読む Excelの範囲指定による乱数発生器

2.ExcelでINDEX関数、RANDBETWEEN関数、ROWS関数を使って一覧から乱数を取得する方法

1つ目の方法では、上限と下限を定義しました。 ランドビュートゥエン このセクションでは、RANDBETWEEN 関数の上限値を定義します。 ここでは、ROWS 関数でセル範囲に存在する行数をカウントしています。 B5:B14 を読み、カウントした値をRANDBETWEEN関数の上限値に割り当てる。

で必要な計算式は セルD5 であるべきです。

=index($b$5:$b$14,randbetween(1,rows(b5:b14)))

を押した後 入力 の下にあるいくつかのセルを自動入力します。 D5 をクリックすると、下の図のような出力が表示されます。

この式では COUNTA 関数の代わりに どちらも,セル範囲内の行数をカウントする関数です。 B5:B14 ROWS関数の代わりにCOUNTA関数を使用すると、次のような式になります。

=index($b$5:$b$14,randbetween(1,counta(b5:b14)))

そして、このセクションの写真に示すような結果になります。

続きを読む Excelで繰り返しなしの乱数発生器

3.CHOOSE関数とRANDBETWEEN関数を使ってリストから乱数を抽出する

を組み合わせることも可能です。 選択 ランドビュートゥエン CHOOSE関数は、リストから乱数を取り出す関数です。 しかし、CHOOSE関数の問題点は、関数内にセル範囲や配列を挿入できないことです。 むしろ、関数内ですべてのデータやセル参照を手入力しなければならず、時間がかかることです。

セルD5 とすると、CHOOSE関数とRANDBETWEN関数の助けを借りて、リストから乱数を抽出するために必要な式は、次のようになります。

=choose(randbetween(1,10),$b$5,$b$6,$b$7,$b$8,$b$9,$b$10,$b$11,$b$12,$b$13,$b$14)の場合

を押した後 入力 を入力し、他のセルを埋めていくと、次のスクリーンショットに示すような乱数が得られます。

4.ExcelのINDEX関数とRANK.EQ関数で一覧から乱数を生成する

これまでの3つの方法は、リストからランダムな値を抽出する際に、繰り返し値が表示されることがありました。 しかし、この方法には INDEX ランク.EQ 関数を使えば、リストから数字を抽出して表示するのは1回で済むようになります。

しかし、この結合式の使い方に取りかかる前に、まずヘルパーカラムを C列 とのことです。 ランド RAND 関数は 0 から 1 までのランダムな 10 進値を返します。 ランク.EQ この関数は、これらの10進数値を昇順または降順に並べます。 順番を指定しない限り、この関数は値を降順に並べます。

では、このランキングをもとに、1位から順にすべての値を セルC5 の場合、INDEX関数はセルの範囲から数値を抽出します。 B5:B14 .

そこで、出力に必要な式 セルE5 になります。

=index($b$5:$b$14,rank.eq($c5,$c$5:$c$14))

プレス 入力 の下にある他のいくつかのセルをオートフィルする。 E5 からランダムな値を取得します。 B列 までのセルを埋めることができるようになります。 E14 を実行すると、エラーは発生せず、繰り返しのないランダムな値が得られます。 しかし、もし E14, を起点としたセル E15 が表示されます。 #該当なし のエラーです。

結びの言葉

私は、すべてのこれらの4つのメソッドは、今、あなたのExcelスプレッドシートに適用するのに役立ちます願っています。 あなたが何か質問やフィードバックがある場合は、コメント欄で私に知らせてください。 または、このウェブサイト上のExcel関数に関連する私たちの他の記事をチェックアウトすることができます。

Hugh West は、業界で 10 年以上の経験を持つ、非常に経験豊富な Excel トレーナー兼アナリストです。彼は会計と財務の学士号と経営管理の修士号を取得しています。ヒューは教えることに情熱を持っており、理解しやすい独自の教育アプローチを開発しました。彼の Excel に関する専門知識は、世界中の何千人もの学生や専門家がスキルを向上させ、キャリアで優れた成果を上げるのに役立ってきました。 Hugh はブログを通じて知識を世界に共有し、個人や企業が潜在能力を最大限に発揮できるよう無料の Excel チュートリアルとオンライン トレーニングを提供しています。