Прескочи на основното съдържание

Как да копирате и поставите редове или колони в обратен ред в Excel?

Автор: Xiaoyang Последна промяна: 2019-09-10

Понякога може да се наложи да копирате и поставите списък с колони или редове в обратен ред вертикално или хоризонтално, както е показано на екранната снимка по-долу. Как бихте могли да се справите с тази работа бързо и лесно в Excel?

Копирайте и поставете списък от колона или ред в обратен ред с формулата

Копирайте и поставете диапазон от колони или редове в обратен ред с VBA код

Копирайте и поставете набор от колони или редове в обратен ред със страхотна функция


Копирайте и поставете списък от колона или ред в обратен ред с формулата

Копирайте и поставете списък с колони в обратен ред вертикално

Ако искате да обърнете списък с клетки на колона, можете да приложите формулата по-долу:

Въведете или копирайте следната формула в празна клетка, където искате да обърнете реда на колоните:

=OFFSET($A$15,-(ROW(A1)-1),0)

Забележка: В горната формула, A1 е първата клетка в колоната и A15 е последната клетка в колоната.

След това плъзнете манипулатора за попълване надолу към клетките, за да извлечете стойностите на клетките в обратен ред, както е показано на екранната снимка по-долу:


Копирайте и поставете списък от редове в обратен ред хоризонтално

За да копирате и поставите списък от редове в обратен ред, моля, използвайте следната формула:

Въведете или копирайте тази формула в празна клетка:

=OFFSET($A$1,,COUNTA(1:1)-COLUMN(A1),)

Забележка: В горната формула, A1 е първата клетка в реда и 1:1 е номерът на реда, който намират вашите данни. Ако вашите данни са в ред 10, трябва да ги промените на 10:10.

И след това плъзнете манипулатора за попълване надясно към клетките, към които искате да приложите тази формула, докато всички стойности бъдат извлечени и ще получите всички стойности обърнати хоризонтално, вижте екранната снимка:


Копирайте и поставете диапазон от колони или редове в обратен ред с VBA код

Ако трябва да копирате и поставите диапазон от колони или редове в обратен ред, тук ще представя някои VBA кодове за бързо и лесно разрешаване. Моля, направете следните стъпки:

Копирайте и поставете списък с колони в обратен ред вертикално

1. Първо трябва да копирате и поставите данните си на ново място и след това задръжте натиснат ALT + F11 за да отворите Microsoft Visual Basic за приложения прозорец.

2. Щракнете Поставете > Модулии поставете следния код в Модули Window.

VBA код: Копирайте и поставете диапазон от клетки в обратен ред вертикално

Sub Flipvertically()
'updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For j = 1 To UBound(Arr, 2)
    k = UBound(Arr, 1)
    For i = 1 To UBound(Arr, 1) / 2
        xTemp = Arr(i, j)
        Arr(i, j) = Arr(k, j)
        Arr(k, j) = xTemp
        k = k - 1
    Next
Next
WorkRng.Formula = Arr
End Sub

3. След това натиснете F5 клавиш, за да изпълните този код, и се появява поле за подкана, за да ви напомни да изберете диапазона от данни, който искате да обърнете вертикално, вижте екранната снимка:

4. И след това щракнете OK и обхватът на данните е обърнат вертикално, както са показани екранните снимки по-долу:


Копирайте и поставете диапазон от клетки в обратен ред хоризонтално

За да обърнете диапазона от данни в хоризонтален ред, моля, приложете следния VBA код:

VBA код: Копирайте и поставете диапазон от клетки в обратен ред хоризонтално

Sub Fliphorizontally()
'updateby Extendoffice
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For i = 1 To UBound(Arr, 1)
    k = UBound(Arr, 2)
    For j = 1 To UBound(Arr, 2) / 2
        xTemp = Arr(i, j)
        Arr(i, j) = Arr(i, k)
        Arr(i, k) = xTemp
        k = k - 1
    Next
Next
WorkRng.Formula = Arr
End Sub

След като изпълните този код, ще получите следните екранни снимки, от които се нуждаете:


Копирайте и поставете набор от колони или редове в обратен ред със страхотна функция

Ако не сте запознати с горните формули и VBA кодове, тук ще препоръчам лесен инструмент -Kutools за Excel, Със своята Обръщане на вертикалния диапазон намлява Обръщане на хоризонталния диапазон функции, можете да обърнете диапазона от клетки вертикално и хоризонтално само с едно щракване.

Съвет:За да приложите това Обръщане на вертикалния диапазон намлява Обръщане на хоризонталния диапазон функции, първо трябва да изтеглите Kutools за Excelи след това приложете функцията бързо и лесно.

След инсталиране Kutools за Excel, моля, направете следното:

Копирайте и поставете диапазон от клетки в обратен ред хоризонтално

1. Изберете диапазона от клетки и след това щракнете Kutools > Обхват > Обръщане на вертикалния диапазон > Всички (само обръщане на стойности), вижте екранна снимка:

2. И след това диапазонът от стойности на клетките е обърнат вертикално наведнъж, вижте екранните снимки:


Копирайте и поставете диапазон от клетки в обратен ред хоризонтално

1. Изберете диапазона от клетки и след това щракнете Kutools > Обхват > Обръщане на хоризонталния диапазон > Всички (само обръщане на стойности), вижте екранна снимка:

2. След това всички стойности на клетките в селекцията са незабавно обърнати хоризонтално, вижте екранните снимки:

Щракнете, за да изтеглите Kutools за Excel и безплатна пробна версия сега!


Още относителни статии за копиране и поставяне:

  • Копирайте и поставете обединени клетки в единични клетки в Excel
  • Обикновено, когато копирате обединените клетки и ги поставите в други клетки, обединените клетки ще бъдат поставени директно. Но вие искате да поставите тези обединени клетки в единични клетки, както е показано на следната екранна снимка, така че да можете да работите с данните, както ви е необходимо. В тази статия ще говоря за това как да копирате и поставите обединени клетки в единични клетки.
  • Копирайте колона и поставете само уникалните записи в Excel
  • За колона с много дубликати може да се наложи да получите копие на този списък само с уникалните стойности. Как можете да направите, за да постигнете това? В тази статия предоставяме два метода за поставяне само на уникалните записи от списък с колони в Excel.
  • Копиране на данни от защитен лист
  • Да предположим, че получавате Excel файл от друг човек, който с работни листове е защитен от потребителя, сега искате да копирате и поставите необработените данни в друга нова работна книга. Но данните в защитения лист не могат да бъдат избрани и копирани, защото потребителят махна отметката от опциите Избор на заключени клетки и Избор на отключени клетки, когато защитава работния лист.
  • Копирайте данни в друг работен лист с разширен филтър в Excel
  • Обикновено можем бързо да приложим функцията за разширен филтър, за да извлечем данни от необработените данни в същия работен лист. Но понякога, когато се опитате да копирате филтрирания резултат в друг работен лист, ще получите следното предупредително съобщение. В този случай как бихте могли да се справите с тази задача в Excel?

  • Супер Формула Бар (лесно редактиране на няколко реда текст и формула); Оформление за четене (лесно четене и редактиране на голям брой клетки); Поставяне във филтриран диапазон...
  • Обединяване на клетки/редове/колони и съхраняване на данни; Съдържание на разделени клетки; Комбинирайте дублиращи се редове и сума/средно... Предотвратяване на дублиращи се клетки; Сравнете диапазони...
  • Изберете Дублиран или Уникален редове; Изберете Празни редове (всички клетки са празни); Super Find и Fuzzy Find в много работни тетрадки; Произволен избор...
  • Точно копие Множество клетки без промяна на референтната формула; Автоматично създаване на препратки към множество листа; Вмъкване на куршуми, квадратчета за отметка и други...
  • Любими и бързо вмъкнати формули, диапазони, диаграми и снимки; Шифроване на клетки с парола; Създаване на пощенски списък и изпращайте имейли...
  • Извличане на текст, Добавяне на текст, Премахване по позиция, Премахване на пространството; Създаване и отпечатване на междинни суми за пейджинг; Конвертиране на съдържание и коментари между клетки...
  • Супер филтър (запазване и прилагане на филтърни схеми към други листове); Разширено сортиране по месец/седмица/ден, честота и други; Специален филтър с удебелен шрифт, курсив...
  • Комбинирайте работни тетрадки и работни листове; Обединяване на таблици въз основа на ключови колони; Разделете данните на няколко листа; Пакетно конвертиране на xls, xlsx и PDF...
  • Групиране на обобщена таблица по номер на седмицата, ден от седмицата и други... Показване на отключени, заключени клетки с различни цветове; Маркирайте клетки, които имат формула/име...
kte tab 201905
  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
officetab отдолу
Comments (3)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
OFFSET($A$15,-(ROW(A1)-1),0) and OFFSET($A$1,,COUNTA(1:1)-COLUMN(A1),) do not work when the data is not located in the first row or column.
these functions seem to work better:

Mirror row:
suppose the data is located in G11:K11
OFFSET($G$11,,COUNTA(11:11)-COUNTA($G$11:G11),) ........ OFFSET($G$11,,COUNTA(11:11)-COUNTA($G$11:K11),)

Mirror column:
suppose the data is located in E22:E26
OFFSET($E$22,ROW($E$26)-ROW(E22),0) ........ OFFSET($E$22,ROW($E$26)-ROW(E26),0)
Rated 5 out of 5
This comment was minimized by the moderator on the site
Hello Nasrin,

How are you. I tried your formulas and they work perfectly. Thanks for your share. We will take your advice. Have a great day.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
Me funcionó la opción del código VBA. Muchas gracias!!!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations