Note: The other languages of the website are Google-translated. Back to English

Excelで重複せずに乱数を生成するにはどうすればよいですか?

多くの場合、Excelで乱数を生成したいですか? ただし、数値をランダム化する一般的な数式では、値が重複する場合があります。 ここでは、Excelで重複することなく乱数を生成するためのいくつかの秘訣を説明します。

数式を使用して一意の乱数を生成する

Kutools for ExcelのInsertRandom Dataを使用して一意の乱数を生成します(簡単です!) 良いアイデア3


矢印青い右バブル 数式を使用して一意の乱数を生成する

Excelで一意の乱数を生成するには、XNUMXつの数式を使用する必要があります。

1。 列Aと列Bに重複のない乱数を生成する必要があるとします。次に、セルE1を選択し、この数式を入力します。 = RAND()、次にプレス 入力します キー、スクリーンショットを参照してください:
doc-randomize-no-repeat-1

2.を押して、列E全体を選択します。 Ctrlキー + スペース キーを同時に押してから、 Ctrlキー + D 式を適用するためのキー = RAND() 列E全体に。スクリーンショットを参照してください。
doc-randomize-no-repeat-2

3.次に、セルD1に、必要な乱数の最大数を入力します。 この場合、1から50の間で繰り返さずに乱数を挿入したいので、D50に1と入力します。
doc-randomize-no-repeat-3

4.次に列Aに移動し、セルA1を選択して、この数式を入力します =IF(ROW()-ROW(A$1)+1>$D$1/2,"",RANK(OFFSET($E$1,ROW()-ROW(A$1)+(COLUMN()-COLUMN($A1))*($D$1/2),),$E$1:INDEX($E$1:$E$1000,$D$1)))、次にフィルハンドルを次の列Bにドラッグし、フィルハンドルを必要な範囲までドラッグします。 スクリーンショットを参照してください:
doc-randomize-no-repeat-4

さて、この範囲では、必要な乱数は繰り返されません。

注意:

1.上記の長い数式で、A1は長い数式を使用するセルを示し、D1は乱数の最大数を示し、E1は数式= RAND()を適用する列の最初のセルであり、2は挿入することを示します。 XNUMX列に乱数。 必要に応じて変更できます。

2.すべての一意の番号が範囲内に生成されると、冗長セルは空白として表示されます。

3.この方法では、1から始まる乱数を生成できます。ただし、XNUMX番目の方法では、乱数の範囲を簡単に指定できます。


矢印青い右バブル Kutools forExcelのInsertRandomDataを使用して一意の乱数を生成します

上記の式では、処理するのに非常に不便があります。 しかし、 Kutools for Excelさん ランダムデータを挿入 この機能を使用すると、必要に応じて一意の乱数をすばやく簡単に挿入できるため、時間を大幅に節約できます。

時間は短くても生産性は高い

Excel300-2019用の2003以上のプロフェッショナルツールが含まれています
最初のバージョン1.0は2011年にリリースされましたが、現在はバージョン18.0です。
ほとんどのExcelの毎日の複雑なタスクを数秒で解決し、時間を節約します
30-無制限のXNUMX日無料トライアル

kteパッケージ盒

インストールした後 Kutools for Excel、以下のようにしてください:(今すぐExcel用のKutoolsを無料でダウンロードしてください!)

1.乱数を生成するために必要な範囲を選択し、をクリックします クツール > インセット > ランダムデータを挿入。 スクリーンショットを参照してください:

2。 の中に ランダムデータを挿入 ダイアログで 整数 タブで、必要な番号範囲を From および テキストボックス、およびチェックすることを忘れないでください 一意の値 オプション。 スクリーンショットを参照してください:

3。 クリック Ok 乱数を生成してダイアログを終了します。

注意:選択したセルが乱数よりも大きい場合、冗長セルは空白として表示されます。

ランダムな一意の日付、ランダムな一意の時刻を挿入することもできます ランダムデータを挿入。 の無料トライアルをご希望の場合 ランダムデータを挿入, 今すぐダウンロードしてください!
ランダムデータを挿入

ヒント。データをランダムに選択または並べ替える場合は、Kutools forExcelを使用してみてください 範囲をランダムに並べ替える 次のスクリーンショットに示すように。 それは制限なしで完全な機能です 30 日々、 今すぐダウンロードして無料トライアルをお試しください。

ドキュメントはランダムに選択します


矢印青い右バブル 重複せずにランダムデータを挿入する




ワークシートのセル範囲に複数のチェックボックスまたはボタンをすばやく挿入する

Excelでは、一度にXNUMXつのチェックボックス/ボタンしかセルに挿入できません。複数のチェックボックス/ボタンを同時に挿入する必要がある場合は面倒です。 Kutools for Excel 強力なユーティリティがあります- バッチ挿入チェック / バッチ挿入オプションボタン ワンクリックで選択したセルにチェックボックス/ボタンを挿入できます。  でフル機能の無料トライアルをクリックしてください 30-日!
ドキュメント挿入チェックボックスオプションボタン
 
Kutools for Excel: 300 以上の便利な Excel アドインがあり、制限なしで無料で試すことができます 30 日。

最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (17)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、ベース 数式を使用して一意の乱数を生成する 、乱数の始点を指定するにはどうすればよいですか? 「15から30」をランダムにしたいとしましょう。
このコメントは、サイトのモデレーターによって最小化されました
RANDBETWEEN()を使用して、XNUMXつの数値の間にある乱数を取得します。
このコメントは、サイトのモデレーターによって最小化されました
長く複雑な数式を完全に理解して、重複のない乱数を生成しようと約1時間試した後、同じ結果が得られるはるかに単純な数式を見つけました。 RAND()関数を使用して列の数値をランダムに生成した後、式を簡略化できます。= IF(ROW()-ROW(A $ 1)+1> $ D $ 2/1、 ""、RANK(OFFSET( $ E $ 1、ROW()-ROW(A $ 1)+(COLUMN()-COLUMN($ A1))*($ D $ 2/1)、)、$ E $ 1:INDEX($ E $ 1000:$ E $ 1、 $ D $ 1)))セルa1から= Rank(E1、$ E $ 50:$ E $ 50)。 次に、ランダムに生成された50個の「一意の番号」が必要な場合。 数式を列aからセルaXNUMXにドラッグするだけです。 それははるかに簡単です。 巨大な不要な式に関係なく、私の質問に答えてくれてありがとう。 このウェブサイトをお持ちでない場合。 私は自分の問題を解決できなかっただろうと思います。 #WARジグリ
このコメントは、サイトのモデレーターによって最小化されました
実際、XNUMXつの等しい値がある場合、ランクは両方に同じ値を与えます。 ランク式は、繰り返されるランク値を返します。
このコメントは、サイトのモデレーターによって最小化されました
マヌエルラミレス。

数式RAND()には数千億の可能性がありますが、それでも条件を使用して数値を繰り返さないようにすることができます。
A1 =ランク(E1、$ E $ 1:$ E $ 50)
A2 = IF(COUNTIFS($E$1:E1;E1)>1;A1+1;Rank(E2,$E$1:$E$50)
このコメントは、サイトのモデレーターによって最小化されました
5000個の乱数を作成する必要があります1-90重複しない30個の列Iと式=RAND()および= IF(ROW()-ROW(A $ 1)+1> $ D $ 1/2、 ""、RANK( OFFSET($ E $ 1、ROW()-ROW(A $ 1)+(COLUMN()-COLUMN($ A1))*($ D $ 1/2)、)、$ E $ 1:INDEX($ E $ 1:$ E $ 1000、$ D $ 1)))数式を変更して5000個の数値を抽出する方法はありますか
このコメントは、サイトのモデレーターによって最小化されました
申し訳ありませんが、私にはわかりません。この問題をフォーラムに投稿できます。 https://www.extendoffice.com/forum.html、多分誰かがあなたを助けることができます。
このコメントは、サイトのモデレーターによって最小化されました
カスタムリストで同じことを行うにはどうすればよいですか? 数字ではありませんか?
このコメントは、サイトのモデレーターによって最小化されました
カスタムリストは列Aにあります。100個の値があり、A1:A100にあるとします。

列Bはカウンターです。
B1の場合は1、B1:B1の場合は(B2 + 100)

列Cはランダムリストです。
C1:C100のRAND()

列Dは、ランダムリストに基づくランダムランクです。
RANK.EQ(C1; $ C $ 1:$ C $ 100)

列Eは出力です。
INDEX($A$1:$A$100;MATCH(D1;$B$1:$B$100;0))

注:RAND()には数十億の可能性があるため、列Cに重複する値が生成される可能性はほとんどありません。 ただし、その可能性を本当に消去したい場合は、列D2:D100に次の数式を入力できます。
IF(COUNTIFS($C$2:C2;C2)>0;D1+1;RANK.EQ(C2;$C$1:$C$100))
このコメントは、サイトのモデレーターによって最小化されました
誰かを助けてください:-)これは私には理解できません。 私たちの学校では、生徒をグループにまとめることがよくあります。2人と2人で、いくつかのワーキングセッションを行います。 この場合は9。 クラスには18人の生徒(さまざま)がいます。 私が追いかけているのは、生徒同士が9回会うことなく、18回の作業セッションで誰が一緒に作業するかというランダムな結果を私に与える式です。 したがって、9つの作業セッションにまたがるXNUMX人の生徒の結果を取得するには、Excelが必要です。また、どの生徒も他の生徒とXNUMX回一致してはなりません。 xxxxはどのように修正しますか? 私は運がなくてもインスピレーションを得るために至る所で検索を行ってきました。 どんな入力でも大歓迎です:-)
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、アンダース、列Aにすべての名前をリストし、列Bに数式= rand()を適用し、セルF2のサイズとして2を指定して、この数式= ROUNDUP(RANK(B3、$ B $ 3)を適用する必要があります。 :$ B $ 19)/ $ F $ 2,0)下のスクリーンショットのようにC列に
このコメントは、サイトのモデレーターによって最小化されました
やあ。 お返事をありがとうございます。
提案は理解できますが、2人の学生が最初の18つのワークショップ、次に9番目のワークショップ、次にXNUMX番目のワークショップなどにランダムに割り当てられる、最大数のワークショップにすべての学生が割り当てられるセットアップを実現するにはどうすればよいですか。さらに、ある学生は、彼/彼女がすでに一緒に働いた別の学生と一致してはなりません。 したがって、XNUMX人の学生がいる場合、すべての学生を(この場合は)XNUMXつのワークショップ(たとえば、週にXNUMXつのワークショップ)に割り当てる「システム」が必要です。
このコメントは、サイトのモデレーターによって最小化されました
または、数独のセットアップを使用することもできます。
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、あなたはこれに対する解決策を見つけることができましたか?私は同じ問題に遭遇しました。 どんな助けでもいただければ幸いです。
このコメントは、サイトのモデレーターによって最小化されました
こんにちは。 私はこのサイトを見つけたばかりで、新しいコードを人々に割り当てるための最良の方法を見つけようとしています。 1000から65000の間で使用するランダムなコードを割り当てたいのですが、これはすでに割り当てられているコードと同じではありません。 また、5つの数字(00000)でフォーマットしたいのですが、それがうまくいかなければ大したことではありません。 これを機能させる方法について何かアイデアはありますか? TIA :-)
このコメントは、サイトのモデレーターによって最小化されました
こんにちは、ジャネル、なぜExcelでデータ検証を試さないのですか? セル範囲に入力できるのは、1000から65000までの整数のみです。
このコメントは、サイトのモデレーターによって最小化されました
EnlaparteGenerenúmerosaleatoriosúnicosconfórmulascomohagoparaampliar el numero de columnas pasar de 2 a 5 sin repetir los numeros segun la Formula que ud puso:= IF(ROW()-ROW(A $ 1)+1> $ D $ 1/2、 ""、RANK(OFFSET($ E $ 1、ROW()-ROW(A $ 1)+(COLUMN()-COLUMN($ A1))*($ D $ 1/2)、)、$ E $ 1 :INDEX($ E $ 1:$ E $ 1000、$ D $ 1)))
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護