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

Excel で行数に基づいて複数のワークシートにデータを分割する

著者Xiaoyang変更日

大きなデータ範囲を特定の行数ごとに複数のExcel ワークシートに効率的に分割すれば、データ管理がぐっとスムーズになります。たとえば、データセットを5 行ごとに分けて複数のシートに配置すれば、より扱いやすく、整理された状態を実現できます。本ガイドでは、この作業を迅速かつ簡単にこなすための2 つの実用的な方法をご紹介します。

行数に基づいてデータを複数のワークシートに分割

VBA コードで行数に基づいて複数のワークシートにデータを分割する

複数のワークシートにデータを分割するを行数に基づいてKutools for Excel で


VBA コードで行数に基づいて複数のワークシートにデータを分割する

次の VBA コードを使えば、行数に基づいてデータを複数のワークシートに簡単に分割できます。手順は以下の通りです。

1ALT + F11キーを押して、「Microsoft Visual Basic for Applications」ウィンドウを開きます。

2.「挿入」>モジュール」をクリックし、モジュールウィンドウに以下のコードを貼り付けます。

VBA:Excel で行数に基づいてデータの分割をワークシートに分割

Sub Splitdatabyrows()
'Updated by Extendoffice 
Dim WorkRng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xWs As Worksheet
Dim xTRg As Range
Dim xNTRg As Range
Dim xIER
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set xTRg = Application.InputBox("Please select the header row:", xTitleId, "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set WorkRng = Application.InputBox("Please select the data range(exclude the header row):", xTitleId, WorkRng.Address, Type:=8)
If TypeName(WorkRng) = "Nothing" Then Exit Sub
SplitRow = Application.InputBox("Split Row Num", xTitleId, Type:=1)
If SplitRow = 0 Then Exit Sub
Set xWs = WorkRng.Parent
Set xRow = WorkRng.Rows(1)
xIER = WorkRng.Rows.Count
xIER = WorkRng.Row + xIER - 1
Application.ScreenUpdating = False
For i = 1 To WorkRng.Rows.Count Step SplitRow
    resizeCount = SplitRow
    If (xIER - xRow.Row + 1) < SplitRow Then
        resizeCount = (xIER - xRow.Row + 1)
    End If
    xRow.Resize(resizeCount).Copy
    Set xWs = Application.Worksheets.Add(after:=Application.Worksheets(Application.Worksheets.Count))
    If xIER > (xRow.Row + SplitRow - 1) Then
        xWs.Name = xRow.Row & " - " & (xRow.Row + SplitRow - 1)
    ElseIf xIER = xRow.Row Then
        xWs.Name = xRow.Row
    Else
        xWs.Name = xRow.Row & " - " & xIER
    End If
    Application.ActiveSheet.Range("A1").PasteSpecial
    Set xNTRg = Application.ActiveSheet.Range("A1")
    xTRg.Copy
    xNTRg.Insert
    Set xRow = xRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

3.次に、F5キーを押して表示されるダイアログボックスで、ヘッダー行を選択します(スクリーンショット参照)。

VBAコードを使用してヘッダー行を選択し、行数に基づいてデータをワークシートに分割

4.次に、OKをクリックすると、2 つ目のプロンプトボックスが表示されるので、行数で分割したいデータ範囲を選択してください(スクリーンショット参照)。

VBAコードを使用してデータ範囲を選択し、行数に基づいてデータをワークシートに分割

5.引き続き、OKボタンをクリックし、3 つ目のプロンプトボックスで分割したい行数を入力してください(スクリーンショット参照)。

VBAコードを使用して分割する行数を指定し、行数に基づいてデータをワークシートに分割

6.次に、OKボタンをクリックすると、指定した行数に基づいてデータが複数のワークシートに分割されます(スクリーンショット参照)。

VBAコードを使用して結果を取得し、行数に基づいてデータをワークシートに分割


複数のワークシートにデータを分割するを行数に基づいてKutools for Excel で

VBA コードが複雑だと感じるなら、Kutools for Excelがこのデータ分割の課題を迅速かつ直感的に解決するソリューションをご提供します。このデータの分割機能を使えば、操作プロセスが大幅に簡素化され、プログラミング知識がなくても、あらゆるスキルレベルのユーザーが大規模なデータセットを簡単に複数のワークシートに分割でき、効果的なデータ管理が実現します。

Kutools for Excel 300 を超える便利なExcel ツールを搭載しています。30 日間、制限なく無料でお試しいただけます。今すぐ入手

すでにKutools for Excel をインストール済みの場合は、以下の手順に従ってください。Kutools for Excel

1.分割したいデータ範囲を選択し、次にKUTOOLS PLUS>データの分割をクリックしてください(スクリーンショット参照)。

Kutoolsを使用して行数に基づいてデータをワークシートに分割

3.「複数のワークシートにデータを分割する」ダイアログボックスで:

  • 固定値分割の基準オプションから選択し、各ワークシートに分割したい行数を入力してください。
  • データにヘッダーが含まれており、各新しい分割ワークシートにも挿入したい場合は、タイトルを含めるオプションをオンにしてください。()ヒント:データに応じてヘッダー行の数を指定できます。)
  • 次に、ワークシート名の分割方法を指定できます。「作成されるワークシートの名前」セクションで、「ルール」ドロップダウンリストからワークシート名のルールを選択し、さらにシート名にプレフィックスまたはサフィックスを追加することも可能です。

Kutoolsを使用して操作を設定し、行数に基づいてデータをワークシートに分割

4.設定を指定したら、OKをクリックします。すると、データの選択範囲が5 行ごとに新しいワークブックの複数のワークシートに分割され、各ワークシートにヘッダーが自動挿入されます(スクリーンショット参照)。

Kutoolsを使用して結果を取得し、行数に基づいてデータをワークシートに分割

注記:この機能をご利用になるには、事前にKutools for Excel をダウンロードしてインストールしてください。

関連記事:

  • 複数のワークシートにデータを分割するを列に基づいて
  • 大量の行データを含むワークシートがあり、それを「名前」列に基づいて複数のワークシートに分割する必要があるとします(下記スクリーンショット参照)。名前はランダムに入力されています。この場合、まずデータを並べ替えてから、一つずつ新しいワークシートにコピー&ペーストする方法も考えられますが、繰り返し作業にはかなりの忍耐が必要です。本日は、この面倒な作業をスピーディーにこなすための便利なテクニックをいくつかご紹介します。
  • Excel で重複行を結合して値を集計する
  • Excel では、重複エントリを含むデータセットに遭遇することがよくあります。このような場合の鍵となる課題は、重複する行を効率的に統合しつつ、対応する列の値を同時に集計することです(下記スクリーンショット参照)。ここでは、重複データをまとめて関連する値を集約し、Excel ワークブックの明確性と有用性を高めるための実用的な手法をいくつかご紹介します。
  • キーカラムに基づいて2 つ以上のテーブルを1 つに統合する
  • ブック内に3 つのテーブルがあり、これらを対応するキーカラムに基づいて1 つのテーブルに統合し、下記スクリーンショットのような結果を得たいとお考えでしょうか?確かに、こうした作業は多くの人にとって手間がかかりがちですが、ご安心ください。本記事では、この課題をスマートに解決するためのいくつかの方法をご紹介します。

最高の 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 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得