Как да копирате множество селекции или диапазони в Excel?
Например, имате голям работен лист и сега искате да копирате само някои избрани диапазони и да ги разпределите в други работни листове. Но когато изберете множество диапазони и щракнете върху копиране, ще има диалогов прозорец с подкана, който да ви напомни „Тази команда не може да се използва за множество селекции“. При това състояние, как бързо копирате няколко избрани диапазона? Ето няколко трика за решаване на тази задача.
- Копирайте множество избрани диапазони с клипборда
- Копирайте множество избрани диапазони с VBA код
- Копирайте множество избрани диапазони от един работен лист
- Копирайте множество диапазони от много работни листове/работни книги
Копирайте множество избрани диапазони с клипборда
С помощта на Клипборда, можете да поставите всички избрани диапазони в друг диапазон или работен лист наведнъж. Моля, направете следното:
1. Щракнете Начало > в Клипборда група за показване на Клипборда Хляб.. Вижте екранна снимка:
2. След това копирайте избраните диапазони, които ви трябват един по един. В същото време копираните диапазони се появяват в Клипборда Хляб. вижте екранната снимка по-горе:
3. Изберете първата клетка от целевия диапазон, в който ще поставите всички копирани диапазони, и щракнете Поставете всички бутон в Клипборда Прозорец.
След това всички копирани диапазони са поставени в посочения целеви диапазон.
Комбинирайте лесно множество селекции от много работни листове/работни книги в един работен лист/работна книга
Може да е досадно да комбинирате десетки листове от различни работни книги в един лист. Но с Kutools за Excel Комбинирайте (работни листове и работни тетрадки) помощна програма, можете да го направите само с няколко кликвания!
Kutools за Excel - Заредете Excel с над 300 основни инструмента. Насладете се на пълнофункционален 30-дневен БЕЗПЛАТЕН пробен период без кредитна карта! Вземи Го Сега
Копирайте множество избрани диапазони с 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 As Integer ' Изход ако диапазон не е избран 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) ' Вземете адреса за поставяне При грешка Resume Next Set PasteRange = Application.InputBox _ (Prompt:="Посочете горната лява клетка за поставяне range:", _ Title:="Copy Mutliple Selection", _ Type:=8) При грешка GoTo 0 ' Изход, ако е отменено If TypeName(PasteRange) < > "Range" Then Exit Sub ' Уверете се, че само горната лява клетка е използвано Set PasteRange = PasteRange.Range("A1") ' Проверете диапазона на поставяне за съществуващи данни 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) )) Следващ i ' Ако диапазонът за поставяне не е празен, предупреждава потребителя If NonEmptyCellCount < > 0 Then _ If MsgBox("Презаписване на съществуващи данни?", vbQuestion + vbYesNo, _ "Копиране на множествена селекция") < > vbYes Then Exit Sub ' Копиране и поставете всяка област 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, След това кликнете върху бягане бутон за изпълнение на кода.
4. А сега, моля, посочете клетка, за да поставите диапазоните в отварянето Копиране на множество селекции диалогов прозорец и щракнете върху OK бутон. Вижте екранна снимка:
Бързо копирайте множество избрани диапазони от един работен лист
- Копиране на множество диапазони полезност на Kutools за Excel може да ви помогне лесно да копирате бързо множество диапазони от активния работен лист. Моля, направете следното:
Kutools за Excel - Заредете Excel с над 300 основни инструмента. Насладете се на пълнофункционален 30-дневен БЕЗПЛАТЕН пробен период без кредитна карта! Вземи Го Сега
1. Изберете диапазоните, които искате да използвате един по един, без да задържате Ctrl и след това щракнете Kutools > Копиране на диапазони. Вижте екранна снимка:
2. В Копиране на множество диапазони диалогов прозорец, проверете Всички опция от Залепете специално и кликнете върху Добре бутън. Вижте екранната снимка по-горе:
Забележка: Ако искате да запазите височината на реда и ширината на колоната като оригиналните диапазони, моля, проверете Включително височина на реда опция и Включително ширина на колоната опция в диалоговия прозорец Копиране на множество диапазони.
3. И посочете клетка, за да поставите диапазоните в следното поле за подкана, и щракнете върху OK бутон.
И сега всички избрани диапазони ще бъдат поставени в посочената клетка като същата височина на реда и ширина на колоната като оригиналните селекции.
Щракнете тук за повече информация относно помощната програма за копиране на множество диапазони
Kutools за Excel - Заредете Excel с над 300 основни инструмента. Насладете се на пълнофункционален 30-дневен БЕЗПЛАТЕН пробен период без кредитна карта! Вземи Го Сега
Копирайте множество диапазони от много работни листове/работни книги
Kutools за Excel предоставя друго Комбинирайте работни листове помощна програма за лесно копиране на множество диапазони от много работни листове или много работни книги в Excel. Моля, направете следното:
Kutools за Excel - Заредете Excel с над 300 основни инструмента. Насладете се на пълнофункционален 30-дневен БЕЗПЛАТЕН пробен период без кредитна карта! Вземи Го Сега
1. кликване Kutools плюс > Комбинирам.
2. В диалоговия прозорец Комбиниране на работни листове – стъпка 1 от 3, моля, проверете Комбинирайте няколко работни листа от работна книга в един работен лист и щракнете върху Напред бутон.
3. В диалоговия прозорец Комбиниране на работни листове – стъпка 2 от 3, моля, направете следното:
(1) Изберете работната книга в Списък с работни книги и след това щракнете върху паса бутон зад всеки работен лист, за да посочите диапазона от всеки работен лист;
(2) Щракнете върху Добави бутон, за да добавите други работни книги, от които ще копирате диапазони, и след това повторете по-горе (1), за да посочите диапазони в добавената работна книга.
(3) Щракнете върху завършеност бутон.
Kutools за Excel - Заредете Excel с над 300 основни инструмента. Насладете се на пълнофункционален 30-дневен БЕЗПЛАТЕН пробен период без кредитна карта! Вземи Го Сега
4. След това излиза диалогов прозорец Kutools за excel и пита за запазване на комбинирания сценарий. Моля, щракнете върху Да или Не бутон, колкото ви трябва.
Досега всички посочени диапазони от множество работни листове или работни книги са копирани и поставени в нова работна книга.
Демонстрация: Копирайте множество избрани диапазони от един работен лист
Демонстрация: Копирайте множество избрани диапазони от много работни книги/работни листове
Най-добрите инструменти за продуктивност в офиса
Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време. Щракнете тук, за да получите функцията, от която се нуждаете най-много...
Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна
- Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
- Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!