KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel で指定された桁数の乱数を生成する方法

著者Sun変更日

現代のオフィス業務では、一時的なアカウント、コード、ユーザー登録、システムテストなどの用途で、特定の桁数を持つ乱数やパスワードを生成する必要がよくあります。こうした乱数を手動で作成するのは面倒なうえ、ミスも発生しやすくなります。 幸いにも、Excel には数式、ツール、VBA を活用して、指定された桁数の乱数を効率的に生成できる柔軟な方法が複数用意されています。 本チュートリアルでは、実際のニーズやさまざまな適用シナリオに応じて、希望する桁数の乱数を生成するための実用的なアプローチを詳しくご紹介します(Excel の数式および組み込みのKutools for Excel ツールを含む)。

数式を使用して指定された桁数の乱数を生成

TEXT 関数と RANDBETWEEN 関数で先頭にゼロを含む乱数を生成

配列数式/SEQUENCE/RANDARRAY(Microsoft 365/2021)を使用して複数の乱数を一括生成

便利なツールを使って指定された長さの乱数またはその他の文字を生成

サンプルファイル


数式を使用して指定された桁数の乱数を生成

固定桁数の乱数

たとえば、6 桁(100000~999999)の乱数文字列を生成したい場合で、先頭にゼロが不要なケースに特に適した次の数式をご利用いただけます。

=RANDBETWEEN(100000,999999)

セル(例:B1)にこの数式を入力し、Enterキーを押してください。すると、6 桁の乱数が生成されます。再計算されるたびに値は更新されますが、この方法で生成される乱数は常に6 桁となり、先頭のゼロは表示されません。桁数を4 桁や8 桁などに変更したい場合は、数式内の2 つの数字を希望する桁数に対応する値(例:4 桁の場合は1000 と9999)に変更してください。

注記:ワークシートを更新・再計算・再開するたびに、乱数は動的に再生成されるため、その都度変化します。この数値を固定したい場合は、セルをコピーし、値の貼り付けで上書きしてください。
数式を使用して指定した特定の桁数で乱数を挿入

入力に応じて変化する桁数の乱数

あるセル(例:A1)に入力した数字に応じて、乱数の桁数を動的に変更したいことがあります(例:A1 に「5」と入力すると、A2 に5 桁の乱数が表示される)。このような要件は、以下の数式で実現できます。

セル A2 を選択し、次の数式を入力してください。

=LEFT(RANDBETWEEN(1,9)&RANDBETWEEN(0,999999999999999)&RANDBETWEEN(0,999999999999999), A1)

Enterキーを押してください。最初は A1 が空欄のため、数式は空白を返します。その後、A1 に数字(例:5 や9)を入力して確定すると、その桁数の乱数が A2 に表示されます。
変更された桁数の乱数

なお、桁数はカスタマイズ可能ですが、A1 セルに非常に大きな値を入力すると、乱数の桁数が不足したり、真にランダムな結果が得られなくなる可能性があります。パスワード用途では、ほとんどのケースで4~16 桁が実用的です。

注記:この数式の結果はワークシートを再計算するたびに更新されるため、値を変更せずに維持したい場合は、生成後に値の貼り付けを行ってください。

TEXT 関数と RANDBETWEEN 関数で先頭にゼロを含む乱数を生成

アプリケーションで先頭にゼロを含む固定桁数の乱数(例:1542 ではなく001542 のようなコード)が必要な場合は、TEXT 関数とRANDBETWEEN 関数を組み合わせて使うのがおすすめです。この方法は、先頭のゼロがあっても常に一定の桁数を保つ必要があるシナリオに最適です。

1。対象セル(例:B1)に、先頭にゼロを含む6 桁の数字を生成する次の数式を入力してください。

=TEXT(RANDBETWEEN(0,999999),"000000")

2Enterキーを押してください。すると、セルには必要な場合に先頭のゼロを含んだ正確に6 桁の乱数(例:000673)がテキスト形式で表示されます。

フォーマット文字列内のゼロの数を調整すれば、表示桁数を簡単に変更できます(例:4 桁なら「0000」、8 桁なら「00000000」)。複数のコードを生成するには、数式を下方向にドラッグして他のセルにコピーしてください。

ヒント:結果は数値のように見えますが、テキスト形式で書式設定されています。これらのコードを先頭のゼロを含まない通常の数値として使用する場合は、標準的なRANDBETWEEN 関数をご利用ください。また、コードを固定したい場合は、コピー後に必ず値の貼り付けを実行してください。

シナリオ分析:このソリューションは、Web アカウント登録など、特定の桁数と先頭のゼロを含むコードが求められるアプリケーションに最適です。Excel が純粋な数値形式で先頭のゼロを自動的に削除してしまうという一般的な動作を回避できます。

配列数式/SEQUENCE/RANDARRAY(Microsoft 365/2021)を使用して複数の乱数を一括生成

同じ桁数の乱数を一括でまとめて生成する必要がある場合は、Microsoft 365/2021 の高度な関数を使えば、1 つの数式で複数の値を一気に生成できます。インポート用、テスト用、在庫番号用など、ランダムなコードを1 列分サッと作成したいときにぴったりです。

先頭のセル(例:E1)を選択し、次の数式で10 個の値を一括生成します。

=TEXT(RANDBETWEEN(SEQUENCE(10,1,0,0),99999999),"00000000")

Microsoft 365/2021 では、さらに効率的な方法もご用意しています。

=TEXT(RANDARRAY(10,1,0,99999999,TRUE),"00000000")

この数式を使えば、先頭のゼロを保持したまま8 桁のユニークな乱数を即座に列全体に展開できます。バッチ処理の要件に応じて、行数や列数の引数を簡単に調整可能です。

注意点:再計算のたびに新しい値が生成されます。結果を固定したい場合は、値の貼り付けをご利用ください。なお、この方法をご使用いただくには、動的配列関数をサポートする Microsoft 365 またはExcel 2021 以降のバージョンが必要です。

シナリオ分析:コードやテストキー、アクセスピンなどを一括生成したいときや、大量の乱数を一度に必要とするシーンに最適です。


便利なツールを使って指定された長さの乱数またはその他の文字を生成

乱数文字列だけでなく、指定範囲内の小数や整数、さらにはランダムなテキスト文字列、日付、時刻、カスタムリストなども生成したいなら、ランダムデータを挿入する機能をKutools for Excelでお試しください!このユーティリティを使えば、さまざまなオフィス業務自動化のニーズに応じて、長さや値の範囲をオプションで指定しながら、多彩なランダムデータを瞬時に生成できます。

無料でKutools for Excel をインストールした後、次の手順に従ってください。

ランダムデータを挿入したいセル範囲を選択し、Kutools > 挿入 > ランダムデータを挿入するをクリックします。
Kutools でランダムデータを挿入

ランダムデータを挿入するダイアログで、数値、小数、日付、時刻、文字列、カスタムリストなど、希望するデータタイプを選択してください。必要に応じて、最小値/最大値、桁数、文字セットなどの設定も指定できます。

ランダムな整数または小数を挿入
ランダムな整数を挿入ランダムな小数を挿入

ランダムな日付または時刻を挿入
ランダムな日付を挿入ランダムな時刻を挿入

ランダムな文字列またはカスタムリストを挿入
ランダムな文字列を挿入ランダムなカスタムリストを挿入

この方法では、一度挿入されたランダム値はツールを再度実行しない限り変化しないため、静的なデータを一括で効率的に生成できます。テストデータの作成、コーディング、一括登録などに特に役立ちます。

メリット:数式やコードは一切不要!非常に柔軟で、誰でも使いやすい設計です。注意点:Kutools は追加のアドインのため、別途ダウンロードおよびインストールが必要です。


サンプルファイル

サンプルファイルをダウンロードするにはクリックしてください


その他の操作(記事)

Excel で指定された平均値と標準偏差に基づいて乱数を生成する方法
特定のケースでは、指定された平均値と標準偏差に基づいて一連の乱数を生成したいことがあります。そんなとき、この課題を素早く解決するにはどうすればよいでしょうか?本チュートリアルでは、Excel でその処理を行う方法をご紹介します。

Excel で範囲内にランダムな文字列を生成する方法
セル内にパスワードなど、異なるランダムな文字列を生成したい場面はよくあります。本記事では、Excel で多様なランダム文字列を簡単に生成できるテクニックをいくつかご紹介します!

Excel で偶数または奇数の乱数のみを生成する方法
このチュートリアルでは、Excel で偶数または奇数の乱数をそれぞれ単独で生成するための実用的な数式をいくつかご紹介します。

Excel で2 つの日付の間のランダムな日付を素早く生成する方法
Excel ファイルを使っていると、何らかの目的でランダムな日付を生成したいことがあります。もちろん、手動で1 つずつ入力することも可能ですが、複数の日付を挿入する必要がある場合、この方法は時間もかかり、退屈です。では、Excel で指定した期間内のランダムな日付を素早く生成するには、どうすればよいでしょうか?


  • スーパー数式バー(複数行のテキストや数式を簡単に編集可能);リーディングレイアウト(多数のセルを簡単に読み書き可能);フィルタリング範囲に貼り付け
  • 結合セル/行/列とデータ保持;セルの分割コンテンツ;重複行を結合して合計/平均を計算…重複の入力を防止セル;範囲を比較
  • 重複または一意の行を選択空白行を選択(すべてのセルが空);スーパー検索とあいまい検索多数のワークブック内で実行;ランダム選択…
  • 正確にコピー複数セルを数式参照を変更せずに移動;複数シートへの参照を自動作成箇条書きの挿入、チェックボックスなど…
  • お気に入りの数式を保存して素早く挿入、範囲、チャート、画像;セルの暗号化パスワード付きで保護;メーリングリストの作成メール送信など…
  • テキストの抽出、テキストの追加、特定の位置の文字を削除、スペースを削除;データページ統計を作成・印刷;セルの内容とコメントを相互変換
  • スーパーフィルター(フィルタースキームを保存し、他のシートに適用可能);高度なソート月/週/日、頻度などでグループ化;特殊フィルタ太字、イタリック体などで強調表示…
  • ワークブックとワークシートを統合;テーブルのマージをキーカラムに基づいてマージ;データの分割を複数のシートに分割xls、xlsx、PDF を一括変換
  • PivotTable を以下でグループ化:週番号、曜日など…ロック解除済みセルと選択範囲をロックを異なる色で表示;数式/名前を持つセルをハイライト表示
kte tab 201905
  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効化。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 生産性が50%向上し、毎日数百回のマウスクリックを削減できます!
officetab bottom