Excel でリストをランダム化する(簡単なステップバイステップのチュートリアル)
ランダムな並べ替えを行うことは、すべてのケースが等しい確率で出現することを保証するための迅速で簡単な方法です。このチュートリアルでは、Excelでリストを簡単にランダム化(シャッフル)する方法をいくつかのステップで説明します。

ビデオ: Excel でリストをランダム化
RAND 関数を使用してリストをランダム化
どのバージョンの Excel を使用しているユーザーでも、RAND 関数と「並べ替え」機能を利用して元のデータセットをランダムに並べ替えることができます。以下の手順に従ってください。
ステップ 1: RAND 式を入力
ランダム化したいリストの一番上のセルの隣にあるセルを選択し、下記の RAND 式を入力して「Enter」を押してください。
=RAND()
ステップ 2: RAND 式を他のセルに埋める
式が入ったセルのフィルハンドル(右下隅にある小さな緑色の四角)をダブルクリックして、その式を下のセルに適用します。
ステップ 3: RAND の結果を並べ替えてリストをシャッフル
1. 「B2:B8」、つまり RAND 式が含まれているリストを選択します。
2. 「ホーム」タブの「編集」グループにある「並べ替えとフィルター」をクリックし、「最小から最大へ並べ替え」を選択します。
3. ポップアップダイアログボックスで「選択範囲を拡張する」を選択し、「並べ替え」をクリックします。
結果
これで準備完了です!リストは以下のようにランダム化されました。
RANDARRAY、SORTBY、ROWS 関数を使用してリストをランダム化(Excel 365/2021)
新しいバージョンの Excel を使用している場合(例:Microsoft 365 版の Excel や Excel 2021、または Web 版の Excel)、RANDARRAY、SORTBY、ROWS の数式を使用することで、指定した位置でリストを素早くシャッフルできます。
ステップ 1: RANDARRAY、SORTBY、ROWS の数式を入力
ランダム化された結果を得たい空白セルを選択し、以下の数式を入力します。(なお、以下の数式の "A2:A8" はランダム化したい元のリストに置き換えてください)そして「Enter」を押します。
=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))
- スプレッド範囲(この場合 B2:B8)が空白でない場合、Excel は「#SPILL!」エラーを返します。
- この数式は揮発性です。ワークシートが変更されるたびに結果が再計算されます。リストを再度シャッフルしたい場合は、「F9」を押してください。
- 数式の結果(ランダム化されたリスト)は編集できません。ランダム化されたリストを編集する必要がある場合は、次のステップに従ってください。
(オプション)ステップ 2: 数式の結果をコピーして貼り付け、編集可能にする
ランダムな結果だけを見たい場合は、このステップをスキップできます。ランダムにシャッフルされたリストを編集したい場合は、数式の結果をコピーして値のみを貼り付ける必要があります。
1. 数式の結果を選択し、「Ctrl」+「C」を押してコピーします。
2. コピーした結果を貼り付けるセルを右クリックします。(元の場所に値を貼り付けることも可能です。)
3. 右クリックメニューから「値のみを貼り付け」オプションを選択します。
結果
これで以下のようにシャッフルされ、編集可能なリストが得られます。
Kutools を使用して Excel でリストを 2 クリックでランダム化
数式の使用に疲れた場合や、アドインの助けを借りたい場合、Kutools for Excel の「並び替え/選択範囲をランダムに」機能を使うことで、より多くのオプションを使って簡単にランダムな並べ替えを行うことができます。以下の手順に従ってください。
まず、シャッフルしたいリストを選択します。次に「Kutools」>「範囲」>「並び替え/選択範囲をランダムに」を選択します。「並び替え/選択範囲をランダムに」ダイアログがポップアップ表示されたら、「行全体」を選択し、「OK」をクリックします。
- 「並び替え/選択範囲をランダムに」機能を試すには、コンピュータに「Kutools for Excel」がインストールされている必要があります。Kutools がインストールされていない場合は、ここをクリックしてダウンロードおよびインストールを行ってください。
- 操作を取り消すには、「Ctrl」+「Z」を押します。
- データを他の方法でシャッフルしたい場合は、こちらのチュートリアルをご覧ください: Excel でセル、行、列を素早くランダムに並べ替えたり選択したりする方法。
VBA を使用してリストをランダム化
リストを VBA メソッドでランダム化したい場合は、以下の手順に従ってください。
ステップ 1: シャッフルするリストを選択
ステップ 2: VBA コードをモジュールウィンドウにコピー
1. 「Ctrl」+「F11」を押して VBA エディタを開き、「挿入」>「モジュール」をクリックしてモジュールコードウィンドウを開きます。
2. 下記の VBA コードをコピーして開いたモジュールウィンドウに貼り付けます。
Sub RandomSort()
'Update by ExtendOffice
Dim xRg As Range
Dim xNum, xF, xI As Integer
Dim xWSh, xAWSh As Worksheet
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xAWSh = Application.ActiveSheet
Set xRg = ActiveWindow.RangeSelection
Set xWSh = Worksheets.Add
xNum = xRg.Count
For xF = xNum To 1 Step -1
xI = WorksheetFunction.RandBetween(1, xF)
xWSh.Range("A1").Value = xRg.Item(xI)
xRg.Item(xI) = xRg.Item(xF)
xRg.Item(xF) = xWSh.Range("A1")
Next
xWSh.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
コードウィンドウで「F5」を押すか、 ボタンをクリックしてこのコードを実行します。
結果
関連記事
- Excel でセルをランダムに選択するにはどうすればよいですか?
- 例えば、ワークシートに値の列(A1: A15)があり、その中から 5 つのランダムなセルを選択する必要があるとします。どのように対処すればよいでしょうか?この記事では、Excel でセルをランダムに選択するためのいくつかのコツを紹介します。
- 重複なしでリストからランダムなデータを選択するにはどうすればよいですか?
- この記事では、重複する値なしでリストからランダムなセルを選択する方法について説明します。以下の 2 つの方法が、このタスクをできるだけ迅速に処理するのに役立つでしょう。
- Excel で条件に基づいてランダムにセルを選択するにはどうすればよいですか?
- 特定の範囲から 1 つまたは 2 つの条件に基づいてデータをランダムに選択する必要がある場合、Excel でこれを解決するにはどうすればよいでしょうか?この記事では、いくつかの解決策をご紹介します。
- Excel でデータリストから値をランダムに埋めるにはどうすればよいですか?
- 例えば、名前のリストがあり、そこからいくつかの名前をランダムに選んで指定されたセルに埋める必要がある場合、どのように対処すればよいでしょうか?ここでは、Excel でデータリストから値をランダムに埋めるためのいくつかの方法を紹介します。
- Excel のその他のヒントとコツ...
最高のオフィス生産性ツール
🤖 | Kutools AI Aide:データ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データを分析してグラフを生成 | Kutools Functions を呼び出す… |
人気機能:重複の検索・ハイライト・マーキング | 空白行を削除 | データを失わず列やセルを統合 | 丸める ... | |
スーパーLOOKUP:複数条件VLOOKUP | 複数値VLOOKUP | 複数シートの検索 | ファジーマッチ .... | |
高度なドロップダウンリスト:すばやくドロップダウンリストを作成 | 依存型ドロップダウンリスト | 複数選択ドロップダウンリスト .... | |
列の管理:特定数の列を追加 | 列を移動 | 非表示列の表示状態を切り替え | 範囲と列の比較 ... | |
注目機能:グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブック&ワークシートの管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リスト送信で電子メールを送信 | スーパーフィルター | 特殊フィルタ(太字/斜体/取り消し線でフィルタ...) | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など) | 50 種以上のグラフ タイプ(ガントチャートなど) | 40を超える実用的な 数式(誕生日に基づいて年齢を計算する、など) | 19種の 挿入ツール(QRコードの挿入、パスから画像の挿入など) | 12種類の 変換ツール(単語に変換する、通貨変換など) | 7つの 結合&分割ツール(高度な行のマージ、セルの分割など) | ...さらに多数 |
Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...
Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます
- Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
- 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
- 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!