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

Excel で複数の選択範囲や範囲をコピーするには、どうすればよいですか?

著者Xiaoyang変更日

日常的なExcel 作業では、大きなワークシート内に散在するデータの一部(非連続ブロック)が必要になることがよくあります。たとえば、特定の表、列、または離れた位置にあるセルを一度にコピーし、別のワークシートにまとめて転記したい場面が頻繁に発生します。しかし、複数の非連続範囲を同時に選択してコピーしようとすると、Excel は「このコマンドは複数の選択範囲に対して使用できません」という警告を表示します。これは非常に煩わしく、Excel の標準機能だけでは分散したデータの集約や再配置が手間になります。では、複数の範囲を選択して素早くコピーする効果的な方法にはどのようなものがあるでしょうか?本ガイドでは、いくつかの実用的な解決策を紹介し、それぞれの方法のメリット、適用可能なシナリオ、注意点を詳しく解説することで、こうした一般的なスプレッドシート作業をより効率的にこなせるようサポートします。


クリップボードで複数の範囲を選択してくださいをコピーする

Excel に標準搭載されているクリップボード機能は見過ごされがちですが、ワークシート内の複数のコンテンツ断片をまとめて管理できます。クリップボードペインを使えば、異なる場所から順番にコンテンツをコピーして一か所に集め、目的のワークシート上の任意の場所に一度に貼り付けることが可能です。この方法は、ビジュアルコンテンツや図形、小さな選択範囲を集めるのに最適ですが、Excel はこれらを個別のコピー操作として扱うため、貼り付け時に書式や構造が常に一貫しているとは限りません。以下の手順と注意点をご確認ください。

1。「ホーム」タブのホーム>Excel でクリップボード ウィンドウを開く方法を示すスクリーンショットリボンにあるクリップボードグループの右下にあるクリップボードペインを表示します。(通常、Excel のリボンのこの位置にあります。)スクリーンショットを参照してください。

2。必要な範囲を1 つずつコピーしてください。各コピー後、選択したコンテンツがクリップボードペイン(左側)に個別のアイテムとして表示されます。統合したいすべての範囲についてこの操作を繰り返しましょう。貼り付ける前に、クリップボードリストを確認し、必要な範囲がすべてキャプチャされていること、および意図しないコピーが削除済みであることをご確認ください。

3。ワークシートに移動して、コピーした範囲を集約したいセルを選択します。クリップボードペインですべて貼り付けをクリックすると、収集したすべてのアイテムが一度に貼り付けられます。

クリップボード経由で貼り付けると、コンテンツはデフォルトで縦方向に積み重ねられます。そのため、テーブルやリストなど特定の構造でデータを整列させる必要がある場合は、貼り付け後に調整が必要になる場合があります。また、クリップボードには最大24 個のアイテムまで保存可能ですが、これを超えると最も古いアイテムが自動的に上書きされます。大切なデータを誤って上書きしないよう、必ず貼り付け先の領域が空であることをご確認ください。

複数のワークシート/ワークブックから簡単に複数の選択範囲を1 つのワークシート/ワークブックに統合

多数のシートやワークブックからコンテンツを集約・統合する必要がある場合、手作業でコピーペーストを繰り返すのは面倒でミスも起こりやすく、時間もかかってしまいます。特に大規模なデータ集約では、その手間とリスクが顕著です。Kutools for Excel のCombine(worksheets and workbooks)ユーティリティを使えば、複数のシートやワークブックを効率よく一か所に統合でき、手作業を最小限に抑えながらもデータ構造をしっかり維持できます。月次レポート、部門横断的なデータ要約、履歴データの統合などに最適です!


Kutools for Excel を使用して、複数のワークシート/ワークブックから複数の選択範囲を簡単に単一のワークシート/ワークブックに結合するスクリーンショット

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手

VBA コードで複数の範囲を選択してくださいをコピーする

ワークフローで頻繁に分離された複数の範囲をコピーする必要がある場合は、VBA(Visual Basic for Applications)による自動化によって、大幅な時間節約と人的エラーの削減が実現できます。この方法は上級ユーザー向けであり、毎週同じセクションをコピーしたり、レポート用にデータを再整形したりするなど、反復的かつ構造化されたタスクに最適です。柔軟性は高まりますが、誤ってデータを上書きしないよう、貼り付け位置には細心の注意を払って慎重に操作する必要があります。

1Ctrlキーを押しながらマウスで、収集したい隣接していない範囲をそれぞれ選択します。

2Alt+F11を同時に押してMicrosoft Visual Basic for Applications(VBA)エディターウィンドウを開き、挿入標準モジュールをクリックしてください。その後、以下のコードをモジュールウィンドウに直接貼り付けてください。

Option Explicit
Sub CopyMultipleSelection()
Dim SelAreas() As Range
Dim PasteRange As Range
Dim UpperLeft As Range
Dim NumAreas As Integer, i As Integer
Dim TopRow As Long, LeftCol As Integer
Dim RowOffset As Long, ColOffset As Integer
Dim NonEmptyCellCount As Integer
' Exit if a range is not selected
If TypeName(Selection) < > "Range" Then
MsgBox "Select the range to be copied. A multiple selection is allowed."
Exit Sub
End If
' Store the areas as separate Range objects
NumAreas = Selection.Areas.Count
ReDim SelAreas(1 To NumAreas)
For i = 1 To NumAreas
Set SelAreas(i) = Selection.Areas(i)
Next
' Determine the upper left cell in the multiple selection
TopRow = ActiveSheet.Rows.Count
LeftCol = ActiveSheet.Columns.Count
For i = 1 To NumAreas
If SelAreas(i).Row < TopRow Then TopRow = SelAreas(i).Row
If SelAreas(i).Column < LeftCol Then LeftCol = SelAreas(i).Column
Next
Set UpperLeft = Cells(TopRow, LeftCol)
' Get the paste address
On Error Resume Next
Set PasteRange = Application.InputBox _
(Prompt:="Specify the upper left cell for the paste range:", _
Title:="Copy Mutliple Selection", _
Type:=8)
On Error GoTo 0
' Exit if canceled
If TypeName(PasteRange) < > "Range" Then Exit Sub
' Make sure only the upper left cell is used
Set PasteRange = PasteRange.Range("A1")
' Check paste range for existing data
NonEmptyCellCount = 0
For i = 1 To NumAreas
RowOffset = SelAreas(i).Row - TopRow
ColOffset = SelAreas(i).Column - LeftCol
NonEmptyCellCount = NonEmptyCellCount + _
Application.CountA(Range(PasteRange.Offset(RowOffset, ColOffset), _
PasteRange.Offset(RowOffset + SelAreas(i).Rows.Count - 1, _
ColOffset + SelAreas(i).Columns.Count - 1)))
Next i
' If paste range is not empty, warn user
If NonEmptyCellCount < > 0 Then _
If MsgBox("Overwrite existing data?", vbQuestion + vbYesNo, _
"Copy Multiple Selection") < > vbYes Then Exit Sub
' Copy and paste each area
For i = 1 To NumAreas
RowOffset = SelAreas(i).Row - TopRow
ColOffset = SelAreas(i).Column - LeftCol
SelAreas(i).Copy PasteRange.Offset(RowOffset, ColOffset)
Next i
End Sub

3。VBA ウィンドウで実行ボタン(または F5 キー)をクリックして、コードを実行しましょう。

4。結合した範囲を貼り付ける先頭セル(左上)を指定するよう促す入力ボックスが表示されます。内容を確認したら、OKをクリックしてください。
コピーされた範囲を配置するための宛先セルを選択しているスクリーンショット

注意事項とトラブルシューティング:この VBA コードは、コピーした選択範囲を指定した貼り付け先の左上から配置します。データが上書きされる可能性があるため、ご注意ください。貼り付け先が空でない場合は、警告が表示されます。「サブスクリプトが範囲外です」などのエラーメッセージが表示されたら、選択範囲がすべてセル範囲で構成されているか確認してください。なお、この方法では図形やグラフなどセル以外のアイテムはコピーできません。コピーされるのは値とセルの書式のみで、オブジェクトは含まれません。


1 つのワークシートから複数の範囲を選択してくださいを素早くコピーする

Kutools for Excel は、より効率的なソリューションとして範囲のコピーツールを提供しています。このツールを使えば、ワークシート内で必要なすべての範囲を一度に選択し、たった1 回の操作でコピー可能!直感的なインターフェースで、貼り付け内容をきめ細かくカスタマイズできます—全コンテンツ、数式のみ、値のみ、書式のみなど、自由に選択可能。さらに、必要に応じて行の高さや列の幅もそのまま保持できるため、時間を大幅に節約し、書式の一貫性を簡単に維持できます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手

1Ctrlキーを押しながら、コピーしたい範囲を1 つずつ選択し、Kutools>範囲のコピーをクリックしてください。詳しくはスクリーンショットをご確認ください。
Kutools for Excel の「複数範囲のコピー」機能を有効化および設定しているスクリーンショット

2複数の範囲のコピーダイアログボックスで、すべてを特殊貼り付けオプションから選択し、特殊貼り付けをクリックして確定します。ここでさらに貼り付け設定をカスタマイズできます—たとえば値のみを貼り付ける、またはすべての書式を含めるなど。OK

注:すべての範囲で元の行の高さと列の幅を保持するには、行の高さを含めるおよび列の幅を含めるオプションにチェックを入れてから、OKをクリックしてください。この設定は、テンプレート作成や見た目にこだわったクリーンなレポート作成など、フォーマットの正確性が重要な場面で特に役立ちます。

3。表示される貼り付け先選択ボックスで、貼り付け範囲の先頭となる左上のセルを指定し、OKをクリックします。
宛先セルを選択しているスクリーンショット

選択したすべての範囲が連続して貼り付け先に配置され、必要に応じて元のサイズがそのまま維持されます。この方法なら、手作業でコピーペーストを繰り返す手間を省き、高速かつ柔軟にワークフローに合わせた貼り付けが実現できます。

複数の範囲のコピーユーティリティの詳細についてはこちらをクリックしてください

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手


複数のワークシート/ブックから複数の範囲のコピーをコピーする

複数のワークシートや異なるワークブックに散らばったデータをまとめて集約するのは、要約レポートやデータ分析を作成する際に頻繁に求められる作業です。これを手作業で行うと時間がかかる上、特に大容量ファイルを扱う場合にはミスも起こりやすくなります。Kutools for Excelは、ワークシートの統合ユーティリティを提供しており、複数のシートやワークブックから指定範囲のデータをコピーする作業を、シンプルでわかりやすいガイド付きプロセスに変えてくれます。このツールは、月次集計、アンケート結果の統合、請求データのマージなど、データが複数のソースに分散しているあらゆるタスクに最適です。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手

1。まず、Excel リボン上でKUTOOLS PLUS > 結合をクリックします。

2。「ワークシートの統合 – ステップ 1 / 3」ダイアログボックスで、複数のワークシートを1 つのワークシートに統合するを選択し、次へをクリックしてください。
「ワークシートの結合」ウィザードで「複数のワークシートを 1 つのワークシートに統合する」オプションを選択しているスクリーンショット

3。ステップ 2 / 3 では、以下の操作を行います。
選択ボタンのスクリーンショット
(1) ワークブックリストで対象のブックを選択し、各シート横にある選択ボタンのスクリーンショット参照ボタンをクリックして、必要な範囲を正確に指定します。
(2) 追加のブックを含めるには、追加をクリックし、(1) の「範囲を指定する」手順を追加ファイルに対して繰り返します。
(3) 全ての選択を確認したら、完了をクリックします。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手

4。今後の使用に備えて設定をシナリオとして保存するかどうか確認するプロンプトが表示されます。「はい」をクリックして保存するか、「いいえ」をクリックして保存せずに続行してください。

処理が完了すると、さまざまなシートまたはブックに含まれるすべての制限された範囲が自動的に収集され、新しいワークシートまたはブック内に配置されます。これにより、繰り返し手動でコピー&ペーストする手間が省け、データ構造を維持したまま分散情報を大幅に高速で集約できます。


Excel 数式を使用して複数の範囲をコピーおよび統合

VBA やクリップボードを使わずに非連続範囲の内容を単一のリストやサマリーに集約したいユーザーにとって、Excel の数式は非常に役立ちます。特に、複数の列やリストからすべてのデータを1 か所のサマリーエリアにまとめるなど、構造化されたデータセットを扱う際に最適です。以下は、そのような場面で活用できる実用的な数式の例です。

1。たとえば、範囲 A1:A5およびC1:C5のデータをセルE1から始まる1 列に結合したい場合は、E1に次の数式を入力します。

=VSTACK(A1:A5, C1:C5)

2Enterキーを押して確定すると、両方の範囲にあるすべての値が E1 セル以降に縦に並びます。他の場所にある複数の非隣接範囲のデータをサマリー範囲にまとめる必要がある場合は、VSTACK 関数内の範囲を変更するだけで簡単に対応できます。

注記
  • VSTACK 関数は、Microsoft 365 用Excel、Microsoft 365 for Mac、およびExcel のウェブ版でのみご利用いただけます。
  • お使いのExcel バージョンがVSTACKをサポートしていない場合、次の数式を使って範囲をコピーできます。以下は、A1:A5C1:C5のデータをE1:E10に縦方向に統合する例です。
    =IF(ROW(A1)<=5,INDEX(A$1:A$5,ROW(A1)),INDEX(C$1:C$5,ROW(A1)-5))
    この数式をセルE1に入力し、Enterキーを押した後、セルE10までフィルハンドルをドラッグしてください。すると、最初の5 つの値がA1:A5から、続く5 つの値がC1:C5から1 列にまとめて表示されます。ソースデータに応じて、範囲のサイズやセル参照を適宜調整してください。

注意事項:これらの数式は静的なデータ集計には最適ですが、元の範囲から書式、数式、グラフ、または結合セルを引き継ぐことはできません。リストやシンプルな表の集計に最も適しています。#REF!のようなエラーが表示された場合は、範囲の境界を再度ご確認ください。

複数の範囲を扱う際は、常に選択内容を再確認し、特に VBA スクリプトやアドインを動作中のブックで実行する場合は、事前にバックアップを作成することを強くおすすめします。予期しない貼り付け結果が発生した場合は、元データの書式と貼り付け先の構造を今一度ご確認ください。Kutools for Excel はこうした作業をよりシンプルかつ確実に行えるよう設計されており、安定性の高いツールを提供します。使用頻度に応じて、最適な方法をぜひご検討ください。たまに使う程度であれば、クリップボード機能やExcel の数式で十分ですが、大規模な作業を頻繁に行う場合は、VBA やKutools のユーティリティが最も便利で正確です。


デモ:1 つのワークシートから複数の範囲を選択してくださいをコピーする

 

デモ:複数のブック/ワークシートから複数の範囲を選択してくださいをコピーする

 

Kutools for Excel:300 個を超える便利なツールがすぐそこへ!AI 搭載の機能で、よりスマートでスピーディーな作業をぜひお楽しみください!今すぐダウンロード!

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