如何在Excel中以相反的顺序复制和粘贴行或列?
有时,您可能需要将一列或一行列表以相反的顺序垂直或水平复制并粘贴,如下图所示。在Excel中,您如何快速轻松地处理这项任务呢?
使用公式以相反顺序复制和粘贴列或行列表
以相反顺序垂直复制和粘贴列列表
如果要反转列单元格列表,可以应用以下公式:
在希望反转列顺序的空白单元格中输入或复制以下公式:
注意:在上述公式中,A1 是列中的第一个单元格,A15 是列中的最后一个单元格。
然后,向下拖动填充柄到单元格中以相反顺序提取单元格值,如下图所示:
以相反顺序水平复制和粘贴行列表
要以相反顺序复制和粘贴行列表,请使用以下公式:
在空白单元格中输入或复制此公式:
注意:在上述公式中,A1是行中的第一个单元格,1:1是数据所在的行号。如果您的数据在第10行,则应将其更改为10:10。
然后,向右拖动填充柄到您要应用此公式的单元格,直到所有值被提取出来,您将获得所有已水平反转的值,见截图:
使用VBA代码以相反顺序复制和粘贴列或行范围
如果您需要以相反顺序复制和粘贴列或行范围,这里我将介绍一些VBA代码来快速轻松地解决它。请按照以下步骤操作:
以相反顺序垂直复制和粘贴列列表
1. 首先,您应该将数据复制并粘贴到新位置,然后按住ALT + F11键打开Microsoft Visual Basic for Applications窗口。
2. 单击插入 > 模块,并将以下代码粘贴到模块窗口中。
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. 然后,单击 确定按钮,数据范围已垂直反转,见下图:
![]() | ![]() | ![]() |
以相反顺序水平复制和粘贴单元格范围
要以水平顺序反转数据范围,请应用以下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 for Excel,通过其“垂直翻转选区”和“水平翻转选区”功能,您可以一键垂直和水平翻转单元格范围。
提示:要应用“垂直翻转选区”和“ 水平翻转选区”功能,首先,您应该下载Kutools for Excel,然后快速轻松地应用该功能。
安装Kutools for Excel后,请执行以下操作:
以相反顺序水平复制和粘贴单元格范围
1. 选择单元格范围,然后单击Kutools > 区域 > 垂直翻转选区 > 全部(仅翻转内容),见截图:
2. 然后,单元格范围的值立即被垂直翻转,见截图:
![]() | ![]() | ![]() |
以相反顺序水平复制和粘贴单元格范围
1. 选择单元格范围,然后单击Kutools > 区域 > 水平翻转选区 > 全部(仅翻转内容),见截图:
2. 然后,所选区域中的所有单元格值立即被水平翻转,见截图:
![]() |
![]() |
![]() |
更多相关的复制和粘贴文章:
- 在Excel中将合并单元格复制并粘贴到单个单元格中
- 通常,当您复制合并单元格并将它们粘贴到其他单元格时,合并单元格将直接被粘贴。但是,您希望将这些合并单元格粘贴到单个单元格中,如下图所示,以便您可以根据需要处理数据。本文将讨论如何将合并单元格复制并粘贴到单个单元格中。
- 基于日期在Excel中复制行并粘贴到另一个工作表中
- 假设,我有一组数据,现在我想根据特定日期复制整个行,然后将它们粘贴到另一个工作表中。您有什么好主意来处理Excel中的这项任务吗?
- 在Excel中复制列并仅粘贴唯一记录
- 对于包含大量重复项的列,您可能需要获取仅包含唯一值的列表副本。您如何实现这一目标?在本文中,我们提供了两种方法来从Excel中的列列表中仅粘贴唯一记录。
- 从受保护的工作表中复制数据
- 假设,您从其他人那里收到一个Excel文件,其中的工作表由用户保护,现在您想将原始数据复制并粘贴到另一个新的工作簿中。但由于用户在保护工作表时未勾选“选定锁定单元格”和“选定非锁定单元格”选项,因此无法选择和复制受保护工作表中的数据。
- 使用高级筛选器在Excel中将数据复制到另一个工作表
- 通常,我们可以快速应用高级筛选器功能从同一工作表中的原始数据中提取数据。但有时,当您尝试将筛选结果复制到另一个工作表时,会收到以下警告消息。在这种情况下,您如何在Excel中处理此任务?
- 超级公式栏(轻松编辑多行文本和公式);阅读布局(轻松读取和编辑大量单元格);粘贴到筛选区域...
- 合并单元格/行/列并保留数据;拆分单元格内容;合并重复行并求和/平均值... 防止重复单元格;比较区域...
- 选择重复或唯一行;选择空白行(所有单元格为空);在多个工作簿中进行超级查找和模糊查找;随机选择...
- 精准复制多个单元格而不改变公式引用;自动创建对多个工作表的引用;插入项目符号、复选框等...
- 收藏并快速插入公式、区域、图表和图片;用密码加密单元格;创建邮件列表并发送电子邮件...
- 提取文本,添加文本,按位置删除,删除空格;创建并打印分页小计;在单元格内容和批注之间转换...
- 超级筛选(保存并应用筛选方案到其他工作表);按月/周/日高级排序,频率等;按粗体、斜体特殊筛选...
- 合并工作簿和工作表;基于关键列汇总表格;将数据分割到多个工作表;批量转换 xls、xlsx 和 PDF...
- 数据透视表按周数、星期几等分组... 用不同颜色显示未锁定、已锁定单元格;高亮显示包含公式的单元格/名称...

- 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑和阅读。
- 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中。
- 将您的生产力提高 50%,每天为您减少数百次鼠标点击!
