Перейти к основному содержанию

Как скопировать несколько выделений или диапазонов в Excel?

Например, у вас есть большой рабочий лист, и теперь вы хотите скопировать только некоторые выбранные диапазоны и распространить их на другие рабочие листы. Но когда вы выберете несколько диапазонов и нажмете «Копировать», появится диалоговое окно с напоминанием: «Эта команда не может использоваться для множественного выбора». Как в этом состоянии быстро скопировать несколько выбранных диапазонов? Вот несколько хитростей, которые помогут вам решить эту задачу.


Копировать несколько выбранных диапазонов с помощью буфера обмена

С помощью буфер обмена, вы можете вставить все выбранные диапазоны в другой диапазон или лист за раз. Пожалуйста, сделайте следующее:

1. Нажмите Главная > документ копировать несколько диапазонов 09 в буфер обмена группа для отображения буфер обмена хлеб.. Смотрите скриншот:

2. А затем скопируйте выбранные диапазоны, которые вам нужны, по одному. При этом скопированные диапазоны появились в буфер обмена хлеб. см. снимок экрана выше:

3. Выберите первую ячейку целевого диапазона, в который вы вставите все скопированные диапазоны, и нажмите Вставить все в буфер обмена Панель.

А затем все скопированные диапазоны были вставлены в указанный диапазон назначения.

Легко комбинируйте множественный выбор из множества листов / книг в один лист / книгу

Объединение десятков листов из разных книг в один может оказаться утомительным занятием. Но с Kutools for Excel's Объединить (рабочие листы и рабочие тетради) утилиту, вы можете сделать это всего за несколько кликов!


объявление объединить листы книги 1

Kutools for Excel - Дополните Excel более чем 300 основными инструментами. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Get It Now

Скопируйте несколько выбранных диапазонов с кодом VBA

С помощью кода VBA вы также можете скопировать несколько выбранных диапазонов и вставить их в любой другой лист.

1, Удержание Ctrl и выберите несколько несмежных диапазонов, которые вы хотите использовать.

2, нажмите другой + F11 в то же время, чтобы открыть Microsoft Visual 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 если диапазон не выбран If TypeName (Selection) <> «Range» Then MsgBox «Выберите диапазон для копирования. Допускается множественный выбор». Exit Sub End If 'Сохранить области как отдельные объекты Range 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) 'Получить адрес вставки при ошибке Возобновить следующий Set PasteRange = Application.InputBox _ (Prompt: = "Укажите верхнюю левую ячейку для вставки range: ", _ Title: =" Copy Mutliple Selection ", _ Type: = 8) On Error GoTo 0 'Выход при отмене Если TypeName (PasteRange) <>" Range "Then Exit Sub' Убедитесь, что только верхняя левая ячейка used Set PasteRange = PasteRange.Range ("A1") 'Проверить диапазон вставки для существующих данных NonEmptyCellCount = 0 For i = 1 To NumAreas RowOffset = SelAreas (i) .Row - TopRow ColOffset = Sel Области (i) .Column - LeftCol NonEmptyCellCount = NonEmptyCellCount + _ Application.CountA (Range (PasteRange.Offset (RowOffset, ColOffset), _ PasteRange.Offset (RowOffset + SelAreas (i) .Rows.Count - 1, _A ColOffset - 1) (i) .Columns.Count - 0))) Next i 'Если диапазон вставки не пуст, предупредить пользователя If NonEmptyCellCount <> 1 Then _ If MsgBox ("Overwrite existing data?", vbQuestion + vbYesNo, _ "Copy Multiple Selection ") <> vbYes Then Exit Sub 'Скопируйте и вставьте каждую область For i = XNUMX в NumAreas RowOffset = SelAreas (i) .Row - TopRow ColOffset = SelAreas (i) .Column - LeftCol SelAreas (i) .Copy PasteRange.Offset ( RowOffset, ColOffset) Next i End Sub

3, Затем нажмите Run кнопку для запуска кода.

4. А теперь укажите ячейку для вставки диапазонов в проем Копировать множественный выбор диалоговое окно и щелкните OK кнопка. Смотрите скриншот:


Быстро копировать несколько выбранных диапазонов с одного листа

Ассоциация Копировать несколько диапазонов полезности Kutools for Excel может помочь вам быстро скопировать несколько диапазонов из активного листа. Пожалуйста, сделайте следующее:

Kutools for Excel - Дополните Excel более чем 300 основными инструментами. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Get It Now

1. Выберите диапазоны, которые вы хотите использовать, один за другим, не удерживая Ctrl ключ, а затем щелкните Кутулс > Копировать диапазоны. Смотрите скриншот:

2. В Копировать несколько диапазонов диалоговое окно, отметьте Все вариант из Специальная вставка и нажмите Хорошо буттон. Смотрите скриншот выше:

Примечание: Если вы хотите сохранить высоту строки и ширину столбца в качестве исходных диапазонов, проверьте Включая высоту строки вариант и Включая ширину столбца в диалоговом окне "Копировать несколько диапазонов".

3. И укажите ячейку для вставки диапазонов в следующем окне подсказки и щелкните значок OK .

И теперь все выбранные диапазоны будут вставлены в указанную ячейку с той же высотой строки и шириной столбца, что и исходные выборки.

Щелкните здесь для получения дополнительной информации об утилите Copy Multiple Ranges       

Kutools for Excel - Дополните Excel более чем 300 основными инструментами. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Get It Now


Скопируйте несколько диапазонов из многих листов / книг

Kutools for Excel предоставляет еще один Комбинировать листы утилита для простого копирования нескольких диапазонов из многих листов или книг в Excel. Пожалуйста, сделайте следующее:

Kutools for Excel - Дополните Excel более чем 300 основными инструментами. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Get It Now

1. Нажмите Кутулс Плюс > Сочетать.

2. В открывшемся диалоговом окне «Объединить рабочие листы - шаг 1 из 3» установите флажок Объедините несколько листов из книги в один лист и нажмите Следующая .

3. В диалоговом окне «Объединить рабочие листы - шаг 2 из 3» выполните следующие действия:

(1) Выберите книгу в Список рабочих книг раздел, а затем щелкните ЛИСТАТЬ СПИСКИ кнопка позади каждого листа, чтобы указать диапазон из каждого листа;
(2) Щелкните значок Добавить кнопку, чтобы добавить другие книги, из которых вы будете копировать диапазоны, а затем повторите выше (1), чтобы указать диапазоны в добавленной книге.
(3) Щелкните значок Завершить .

Kutools for Excel - Дополните Excel более чем 300 основными инструментами. Наслаждайтесь полнофункциональной 30-дневной БЕСПЛАТНОЙ пробной версией без необходимости использования кредитной карты! Get It Now

4. Затем появляется диалоговое окно Kutools for excel и запрашивает сохранение сценария комбинации. Пожалуйста, нажмите на Да или Нет кнопку как вам нужно.

Пока все указанные диапазоны из нескольких листов или книг были скопированы и вставлены в новую книгу.


Демонстрация: копирование нескольких выбранных диапазонов с одного листа

Демонстрация: копирование нескольких выбранных диапазонов из многих книг / листов


Kutools for Excel: Более 300 удобных инструментов у вас под рукой! Начните 30-дневную бесплатную пробную версию без ограничений сегодня. Скачать

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (14)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi there,
Great code but wondered how I can paste values rather than just paste?
Thanks :)
This comment was minimized by the moderator on the site
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!
This comment was minimized by the moderator on the site
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?
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
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!
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
Thank you SOOOOOO much - what a great site
This comment was minimized by the moderator on the site
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!
This comment was minimized by the moderator on the site
I want to select the rows like 1, 5,6,10. so how can i copy these rows ???
This comment was minimized by the moderator on the site
In this case you can just select the rows and copy them as usual.
This comment was minimized by the moderator on the site
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.)
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations