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

Excel で長いリストを均等なグループに分割するには、どうすればよいですか?

著者Xiaoyang変更日
長いリストを均等なグループに分割

Excel で大規模なデータセットを扱う際、長い項目リストをいくつかの均等なグループに分割しなければならない場面に直面することがあります。たとえば、アンケート回答をチーム間で分配したり、バランスの取れたタスク割り当てを作成したり、プロジェクトのチーム編成を行ったりする必要があるかもしれません。こうしたリストを手作業で分割するのは非常に時間がかかり、特にデータ量が多い場合にはミスも起こりやすくなります。リストを効率的に均等なグループに分割することで、ワークフローを合理化し、データ整理の精度を高め、エラーのリスクを大幅に軽減できます。

Excel にはこれを実現するための実用的な方法がさまざまあります。VBA による自動化、Kutools for Excel などの便利なアドイン、数式を活用した手法など、それぞれに独自のメリットがあり、あなたのスキルレベルや使用シーンにぴったり合う方法をお選びいただけます。

VBA コードで長いリストを複数の均等なグループに分割する

Kutools for Excel で長いリストを複数の均等なグループに分割する

Excel 数式で長いリストを複数の均等なグループに分割する


VBA コードで長いリストを複数の均等なグループに分割する

データを一つひとつ手作業でコピー&ペーストして別々のグループに分ける面倒な方法とは一線を画し、VBA を使えばこの作業を迅速かつ正確に自動化できます。以下は、VBA を使ってリストを均等なグループに分割するためのステップ・バイ・ステップガイドです。

1ALT + F11キーを押すと、Microsoft Visual Basic for Applicationsエディターウィンドウが開きます。

2挿入>モジュールをクリックし、新しく開いたモジュールウィンドウに次の VBA コードを貼り付けます。

VBA コード:長いリストを複数の均等なグループに分割する

Sub SplitIntoCellsPerColumn()
'updateby Extendoffice
    Dim xRg As Range
    Dim xOutRg As Range
    Dim xCell As Range
    Dim xTxt As String
    Dim xOutArr As Variant
    Dim I As Long, K As Long
    On Error Resume Next
    xTxt = ActiveWindow.RangeSelection.Address
Sel:
    Set xRg = Nothing
    Set xRg = Application.InputBox("please select data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    If xRg.Areas.Count > 1 Then
        MsgBox "does not support multiple selections, please select again", vbInformation, "Kutools for Excel"
        GoTo Sel
    End If
    If xRg.Columns.Count > 1 Then
        MsgBox "does not support multiple columns,please select again", vbInformation, "Kutools for Excel"
        GoTo Sel
    End If
    Set xOutRg = Application.InputBox("please select a cell to put the result:", "Kutools for Excel", , , , , , 8)
    If xOutRg Is Nothing Then Exit Sub
    I = Application.InputBox("the number of cell per column:", "Kutools for Excel", , , , , , 1)
    If I < 1 Then
        MsgBox "incorrect enter", vbInformation, "Kutools for Excel"
        Exit Sub
    End If
    ReDim xOutArr(1 To I, 1 To Int(xRg.Rows.Count / I) + 1)
    For K = 0 To xRg.Rows.Count - 1
      xOutArr(1 + (K Mod I), 1 + Int(K / I)) = xRg.Cells(K + 1)
    Next
    xOutRg.Range("A1").Resize(I, UBound(xOutArr, 2)) = xOutArr
End Sub

3。F5キーを押すか、実行ボタンをクリックしてコードを実行してください。表示される入力ボックスで、グループに分割したいデータ列を選択します。
データ範囲を選択するVBAコード

4OKをクリックした後、グループ化結果を配置したい開始セルを次のプロンプトで選択します。
結果を配置するセルを選択するVBAコード

5OKをクリックすると、プロンプトダイアログが表示されるので、各グループ(各列)に含める項目数を入力してください。
列ごとに分割したいセル数を入力するVBAコード

6。最後に、OKをクリックして処理を完了してください。コードによって選択したリストが自動的に複数の列に分割され、各列には指定した数の項目が含まれます。注:リストが完全に均等に分割できない場合、最後のグループの項目数が少なくなることがあります。
選択されたリストデータが複数の均等なグループに分割されました

VBA ソリューションは、マクロに慣れており、繰り返し行うタスクを自動化したいユーザーに最適です。高い柔軟性を備えており、追加設定なしでさまざまなグループサイズでスクリプトを実行できます。ただし、コードを含んでいるため、すべての職場環境で使用が許可されているとは限りません。VBA に不慣れなユーザーは、マクロを実行する前に必ず作業内容を保存することをおすすめします。

マクロが期待通りに動作しない場合は、Excel でマクロが有効になっているかをご確認ください。また、単一の連続した列が選択されているかもご確認ください。そうでない場合、コードはデータ範囲を再選択するよう促します。リストの長さがグループサイズで完全に割り切れない場合は、最後のグループの項目数が少なくなるため、配分計画時にこの点を考慮してください。


Kutools for Excel で長いリストを複数の均等なグループに分割する

お使いの環境にKutools for Excelがインストール済みなら、その範囲の変換機能を使えば、わずか数回のクリックで長いリストを列と行にわたって複数のグループにすばやく再配置できます。手作業によるミスを減らし、データ整理をより効率的に実現!Kutools は直感的なダイアログボックスと信頼性の高い結果で、技術に詳しくないユーザーにもプロフェッショナルな使いやすさを提供します。

Kutools for Excelは300 以上の高度な機能を提供し、複雑な作業を効率化して、創造性と生産性を高めます。AI 機能と統合されたKutools は、正確にタスクを自動化し、データ管理を簡単にします。Kutools for Excel の詳細情報。。。         無料トライアル。。。

Kutools for Excelをインストール後、以下の操作を行ってください。

1。分割したい長いリストを選択し、Kutools > 範囲 > 範囲の変換をクリックします。
Kutoolsの「範囲の変換」機能をクリック

2範囲の変換ダイアログボックスで、変換タイプの下から単一列を範囲に変換を選択し、固定値にチェックを入れて、1 行あたりの項目数を入力します。(例:4 つのグループに分割したい場合は、それに応じてグループサイズを指定します。)これにより、元のリストの分割方法が決まります。
ダイアログボックスでオプションを指定

3OKをクリックした後、グループ化結果を表示するワークシート上のセルを選択します。
結果を配置したいセルを選択

4。再度 OKをクリックすると、Kutools が設定に従って長いリストを即座に均等なサイズのグループに分割します。

Kutools for Excel の使用は簡単で、手作業によるミスを最小限に抑えられます。この方法は、グラフィカルなインターフェースを好むユーザー、および頻繁にデータ変換を行うユーザーに最適です。

今すぐKutools for Excel をダウンロードして、無料トライアルをお試しください!


Excel 数式で長いリストを複数の均等なグループに分割する

VBA やアドインを使わずにリストを均等なグループに効率的に分割したい場合は、Excel の組み込み数式だけで実現できます。このアプローチはすべてのExcel バージョンで利用可能で、共有ブック環境やマクロ・サードパーティ製アドインの使用が制限された状況でも安心して使える、高い移植性を備えたソリューションです。特に、グループを隣接する列に並べたい場合に最適です。

コーディング不要でリストを簡単にフィルタリング・再編成できるよう、各エントリーにグループ番号を割り当てる方法は次のとおりです。

1。A 列のセル A2 から下方向に長いリストがあると仮定します。その最初のリスト項目の横にあるセル B2 に、グループ番号を割り当てる次の数式を入力してください。

=MOD(ROW(A2)-ROW($A$2),4) +1

この例では、「4」は作成したいグループ数を表します。異なるグループ数に分割したい場合は、この値を調整してください。この数式はグループ番号を1 から4 まで循環させます。

2。リスト全体にわたって数式を下にドラッグして、すべての行にグループ番号を割り当てます。これにより、各行が所属するグループに応じてラベル付けされた補助列が作成されます。

3。グループを抽出または表示するには:

  • フィルターを使用できます。リストにオートフィルターを適用し、グループ番号でフィルターをかけることで、レコードをすばやく分離できます。
  • 各グループを別々の場所にコピー&ペーストしたり、高度な数式やピボットテーブルを活用して、必要に応じて項目を自由に並べ替えることも可能です。

動的配列をサポートするExcel(Microsoft 365 およびExcel 2021 以降)をご利用であれば、WRAPROWS 関数を使ってリストを自動的に均等なサイズの列に分割できます。たとえば、リストが A2:A17 にあり、それを4 つの列(グループ)に分けたい場合などに便利です。

=WRAPROWS(SORTBY(A2:A13, RANDARRAY(ROWS(A2:A13))), 4)

新しいグループ配置を開始したいセルにこの数式を入力し、Enter キーを押します。すると、リストの均等な部分をランダムに列に埋めていきます。

注意事項
  • リストが完全に均等に分割できない場合、列に#N/A エラーが表示されることがあります。「4」(ここではグループ数)を、実際の状況に応じて必要に応じて調整してください。
  • 範囲内に空白セルがある場合、グループ化された結果ではゼロとして扱われます。

数式による方法のメリットは、共有ブックと完全に互換性があり、データを変更した際にグループ番号を即座に再計算できる点です。ただし、数式の入力や調整には細心の注意を払う必要があります。範囲の指定ミスやグループ数の誤りによって、項目が欠落したり重複したりするおそれがあります。エラーが発生した場合は、リスト範囲が正しいこと、および数式がリスト全体にわたって正しくドラッグされていることをご確認ください。

ヒント:元のデータに数式を適用する前には、必ずバックアップを作成してください。また、補助列を削除する予定の場合は、グループ化後に特殊貼り付け > 値をご利用ください。


最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 VLookup     複数シート間 VLookup      ファジーマッチ....
高度なドロップダウンリストドロップダウンリストをすばやく作成     連動型ドロップダウンリスト     複数選択可能なドロップダウンリスト....
列マネージャー指定した数の列を追加列の移動非表示列の表示状態を切り替え範囲および列の比較...
注目の機能グリッドフォーカス     デザインビュー   強化された数式バー    ワークブックとシートマネージャー     リソースライブラリ(オートテキスト)  日付ピッカー     ワークシートの統合    暗号化/セルの復号化    リストからメール送信     スーパーフィルター      特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除、...)   50+チャートタイプガントチャート、...)   40+実用的関数誕生日に基づいて年齢を計算します、...)   19 挿入ツールQR コードを挿入パスから画像を挿入、...)   12 変換ツール単語に変換する為替レートの変換、...)   7 結合と分割ツール高度な行のマージセルの分割、...)さらに多数
Kutools はお好みの言語でご利用いただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+の他の言語をサポートしています!

Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。


Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします

  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得