Note: The other languages of the website are Google-translated. Back to English
ログイン  \/ 
x
or
x
今すぐ登録  \/ 
x

or

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

たとえば、大きなワークシートがあり、選択した範囲のみをコピーして他のワークシートに配布したいとします。 ただし、複数の範囲を選択して[コピー]をクリックすると、「そのコマンドは複数の選択で使用できません」というプロンプトダイアログボックスが表示されます。 この状態で、選択した複数の範囲をすばやくコピーするにはどうすればよいですか? このタスクを解決するための秘訣をいくつか紹介します。


クリップボードで選択した複数の範囲をコピーする

の助けを借りて、 クリップボード、選択したすべての範囲を一度に別の範囲またはワークシートに貼り付けることができます。 次のようにしてください。

1に設定します。 OK をクリックします。 ホーム > ドキュメントコピー複数の範囲09 クリップボード 表示するグループ クリップボード パン.。 スクリーンショットを参照してください:

2。 次に、必要な選択した範囲をXNUMXつずつコピーします。 同時に、コピーされた範囲はに表示されています クリップボード パン. 上記のスクリーンショットを参照してください。

3。 コピーしたすべての範囲を貼り付ける宛先範囲の最初のセルを選択し、をクリックします すべて貼り付け ボタンの クリップボード ペイン。

そして、コピーされたすべての範囲が指定された宛先範囲に貼り付けられました。

多くのワークシート/ワークブックからの複数の選択をXNUMXつのワークシート/ワークブックに簡単に組み合わせる

異なるワークブックの数十枚のシートをXNUMX枚のシートにまとめるのは面倒かもしれません。 しかし、Kutools forExcelの 組み合わせる(ワークシートとワークブック) ユーティリティ、あなたはそれを数回クリックするだけで成し遂げることができます! フル機能の無料トライアル30日!
広告コンバインシートブック1

Kutools for Excel -Excel用の300以上の便利なツールが含まれています。 30日間のフル機能の無料トライアル、クレジットカードは必要ありません! 今すぐ入手

選択した複数の範囲をVBAコードでコピーする

VBAコードを使用すると、選択した複数の範囲をコピーして、他のワークシートに貼り付けることもできます。

1。 ホールディング Ctrlキー キーを押して、使用する隣接していない複数の範囲を選択します。

2。 押す 他の + F11 同時にキーを開いて アプリケーション用のMicrosoftVisual Basic ウィンドウ、クリック インセット > モジュール、および次のコードをモジュールに入力します。

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範囲が選択されていない場合TypeName(Selection)<> "Range" Then MsgBox "コピーする範囲を選択します。複数選択が可能です。" Exit Sub End If '領域を個別の範囲オブジェクトとして格納しますNumAreas = Selection.Areas.Count ReDim SelAreas(1 To NumAreas)For i = 1 To NumAreas Set SelAreas(i)= Selection.Areas(i)Next'左上を決定します複数選択のセル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) '貼り付けアドレスを取得エラー時に再開次の設定PasteRange = Application.InputBox _(Prompt:= "貼り付けの左上のセルを指定range: "、_ Title:=" Copy Mutliple Selection "、_ Type:= 8)On Error GoTo 0 'キャンセルされた場合は終了IfTypeName(PasteRange)<>" Range "Then ExitSub'左上のセルのみが使用済みSetPasteRange = PasteRange.Range( "A1") '既存のデータの貼り付け範囲を確認しますNonEmptyCellCount = 0 For i = 1 To NumAreas RowOffset = SelAreas(i).Row-TopRow ColOffset = Sel Areas(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 NonEmptyCellCount <> 0 Then _ If MsgBox( "既存のデータを上書きしますか?"、vbQuestion + vbYesNo、_ "複数選択をコピー")<> vbYes Then Exit Sub '各領域をコピーして貼り付けますFori = 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。 次に、 ラン ボタンを押してコードを実行します。

4。 次に、セルを指定して、開口部に範囲を貼り付けてください 複数選択をコピー ダイアログボックスをクリックし、 OK ボタン。 スクリーンショットを参照してください:


XNUMXつのワークシートから選択した複数の範囲をすばやくコピーする

  複数の範囲をコピーする の有用性 Kutools for Excel アクティブなワークシートから複数の範囲をすばやく簡単にコピーするのに役立ちます。 次のようにしてください。

Kutools for Excel -Excel用の300以上の便利なツールが含まれています。 30日間のフル機能の無料トライアル、クレジットカードは必要ありません! 今すぐ入手

1。 を押さずに使用したい範囲をXNUMXつずつ選択します Ctrlキー キーを押してからクリックします クツール > コピー範囲。 スクリーンショットを参照してください:

2。 の中に 複数の範囲をコピーする ダイアログボックス、チェック 全て からのオプション 特別なペースト セクションを開き、 OK button。 上記のスクリーンショットを参照してください。

注意: 行の高さと列の幅を元の範囲のままにしたい場合は、チェックしてください 行の高さを含む オプション 列幅を含む [複数の範囲をコピー]ダイアログボックスのオプション。

3。 次のプロンプトボックスに範囲を貼り付けるセルを指定して、[ OK ボタン。

これで、選択したすべての範囲が、元の選択と同じ行の高さと列の幅として、指定したセルに貼り付けられます。

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

Kutools for Excel -Excel用の300以上の便利なツールが含まれています。 30日間のフル機能の無料トライアル、クレジットカードは必要ありません! 今すぐ入手


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

Kutools forExcelは別のものを提供します ワークシートを組み合わせる Excelで多くのワークシートまたは多くのワークブックから複数の範囲を簡単にコピーするユーティリティ。 次のようにしてください。

Kutools for Excel -Excel用の300以上の便利なツールが含まれています。 30日間のフル機能の無料トライアル、クレジットカードは必要ありません! 今すぐ入手

1。 クリック Kutools Plus > 組み合わせる.

2. [ワークシートの結合–ステップ1/3]ダイアログボックスを開いて、[ ワークブックの複数のワークシートをXNUMXつのワークシートに結合します オプションをクリックし、 ボタン。

3。 [ワークシートの結合–ステップ2/3]ダイアログボックスで、次のようにしてください。

(1)でワークブックを選択します ワークブックリスト セクションをクリックし、 ブラウズ 各ワークシートの後ろにあるボタンをクリックして、各ワークシートの範囲を指定します。
(2)をクリックします 追加 ボタンをクリックして、範囲をコピーする他のブックを追加し、上記(1)を繰り返して、追加したブックの範囲を指定します。
(3)をクリックします 終了 ボタン。

Kutools for Excel -Excel用の300以上の便利なツールが含まれています。 30日間のフル機能の無料トライアル、クレジットカードは必要ありません! 今すぐ入手

4。 次に、Kutools for Excelダイアログボックスが表示され、組み合わせシナリオの保存を要求されます。 クリックしてください はい ボタンまたは いいえ 必要に応じてボタンを押します。

これまでのところ、複数のワークシートまたはワークブックから指定されたすべての範囲がコピーされ、新しいワークブックに貼り付けられています。


デモ:XNUMXつのワークシートから選択した複数の範囲をコピーする

デモ:多くのワークブック/ワークシートから選択した複数の範囲をコピーします


Kutools for Excel Excel用の300以上の便利なツールが含まれており、30日以内に無制限に無料で試すことができます。 今すぐダウンロードして無料トライアル!

最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300以上の強力な機能。 Office / Excel2007-2019および365をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 全機能30日間の無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性が50%向上し、毎日何百ものマウスクリックが減ります。
officetab下部
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    peter.habershon@eis2win.co.uk · 2 years ago
    Hi there,
    Great code but wondered how I can paste values rather than just paste?
    Thanks :)
  • To post as a guest, your comment is unpublished.
    Peter Habershon · 2 years ago
    Hi there,
    Great post and the VBA code works perfectly. Is it possible to change the code to paste special > values? If so, how?
    Thanks!
  • To post as a guest, your comment is unpublished.
    jacobkring@hotmail.com · 3 years ago
    Hi. Nice code, works great. Is it possible to modify the code in a way such that it is possible to insert/paste the market row/ranges multiple times instead of just one time?
    • To post as a guest, your comment is unpublished.
      kelly.extendoffice@gmail.com · 3 years ago
      Hi Jacob,
      Maybe this Insert Title Rows feature of Kutools for Excel can solve your problem.
      https://www.extendoffice.com/product/kutools-for-excel/excel-insert-title-rows.html
  • To post as a guest, your comment is unpublished.
    kmmanahan · 3 years ago
    Hi! How do I use the same VBA Code above but instead of simply pasting, I would like it to paste special for just the values. The table I am putting the values (constants) into is already formatted and with totals (formulas)
    Thanks so much in advance!
    • To post as a guest, your comment is unpublished.
      · 3 years ago
      Hi Katrina Manahan,

      Please open the Microsoft Visual Basic for applications window, and create a new Module, just press CTRL + V to paste the VBA code directly. The sequence numbers before code won't be pasted.
  • To post as a guest, your comment is unpublished.
    Steve O · 5 years ago
    Thanks for the code, works perfectly. This odd lack of function within Excel has stumped me many times in the past. It's normally quicker in the end to work around it, but in this case I have 4000 individually colour-coded cells so any work-around would have taken a long time, so I'm very grateful.
    Steve
  • To post as a guest, your comment is unpublished.
    David Hedin · 5 years ago
    Hi,
    Is it possible to adjust the code so that the copied cells can be pasted in another sheet? Now I get the error message "400" when I attempt this. I use Office 2010.

    Also, is it possible to copy so that empty lines are deleted? I have a big document and I copy some cells with hundreds of non-copied rows between them. This makes for a rather bulky output.
  • To post as a guest, your comment is unpublished.
    Yunivor · 5 years ago
    I found that if you have the Clipboard task plane open you can copy multiple rows simply using ctrl+C and paste them in order with crtl+V using Excel 2007.
  • To post as a guest, your comment is unpublished.
    M · 6 years ago
    Thank you SOOOOOO much - what a great site
  • To post as a guest, your comment is unpublished.
    Lyn Mc · 6 years ago
    Found above explanation of options to copy multiple ranges very helpful - thanks! I used the 'clipboard' option to copy multiple rows. Had to select each group of consecutive rows and copy it, move on and select next row or group of consecutive rows and copy it, etc.. But after this its easy, go to where you want to paste them, eg a new sheet, and click 'Paste all' from the Clipboard and all the rows are copied to there with out any gaps! Exactly what I wanted - thanks again!
  • To post as a guest, your comment is unpublished.
    Abani Pattanayak · 6 years ago
    I want to select the rows like 1, 5,6,10. so how can i copy these rows ???
    • To post as a guest, your comment is unpublished.
      David Hedin · 5 years ago
      In this case you can just select the rows and copy them as usual.
      • To post as a guest, your comment is unpublished.
        K Raj · 4 years ago
        How can I copy cell a1, e5, g2, and so on.... (more than 1000 cells in same column) and paste them into b1, f5, h2 (right into the next column in same row.)