如何在 Excel 中交换列:拖动和其他移动列的方法

17 Mar 2025 | 6 分钟阅读

Excel 表格结构对于在 Excel 中进行回归式工作的用户来说非常方便。无论表格结构设计得多么完善,用户也经常需要交换 Excel 列,以便更清晰地查看数据,从而可以并排比较。

出乎意料的是,没有直接的方法或公式可以执行此操作。常见的方法是尝试传统的拖动列名方法,但这种方法也无法正常工作,有时会让用户感到困惑。现在,问题来了,如何做到呢?

本教程将介绍四种不同的方法,帮助您在 Microsoft Excel 中切换列。

  1. 使用拖放方法交换列
  2. 使用复制/粘贴方法重新排列列
  3. 使用 VBA 宏技术移动列

通过使用拖放功能交换列

正如本教程开头所讨论的,拖动列的方法比预期的要困难。一个小的失误就可能导致整个事情出错!

但是,良好的知识和少量的练习可以让您也能熟练掌握这种方法!

下面是一个包含不同手机产品及其功能的 Excel 工作表,我们需要切换其中一些列的顺序。例如,在下面的工作表中,我们想将“显示尺寸”列与“操作系统”列进行交换。这样做会将该列移到价格列表旁边。

How to swap columns in Excel: Dragging and other methods to move columns

请按照以下步骤,使用拖放功能快速交换列。

  1. 第一步是选择要交换的列。在本例中,我们选择了“显示尺寸”列。
How to swap columns in Excel: Dragging and other methods to move columns
  1. 将鼠标光标移到列的边缘。您会注意到鼠标指针会变成一个四向箭头光标

注意:建议不要将光标移到列标题上,因为该区域的列可能会显示不同的形状。但在选定列的右侧或左侧边缘操作会更准确。

  1. 接下来,按住 Shift 键,同时将列拖动到新位置。您会看到一条模糊的“I”形条和一个方框,表示新列将被交换到的位置。
    How to swap columns in Excel: Dragging and other methods to move columns
  2. 到达目标位置后,同时释放鼠标和 Shift 键。此时,您会看到所需的列已移动到选定位置,即“显示尺寸”列与“操作系统”列已交换。
    How to swap columns in Excel: Dragging and other methods to move columns
  3. 按照上述步骤,您可以将多列拖动到 Excel 表格中的新位置。要选择多列,请先选择第一列,同时按住 Shift 键,然后单击最后一列的标题。然后,将光标移到最后一列,直到它变成四向箭头。将选定的列拖动到新位置,完成后,释放 Shift 键。所有列都会移动到选定位置,如下图所示。
How to swap columns in Excel: Dragging and other methods to move columns

注意。拖放方法仅适用于相邻的列或行,不能用于非相邻的列和行。

拖放方法适用于所有 Excel 版本。您也可以使用相同的技术来交换行。虽然一开始可能需要一些练习,但一旦掌握,它将是一个真正的省时工具。

使用复制/粘贴方法重新排列列

如果拖放方法不适合您,您可以尝试使用复制/粘贴方法来更改列的顺序。

移动一列的步骤

  1. 第一步是选择要移动的整列,或者您可以直接单击该列的标题。
  2. 按快捷键 Ctrl + X 剪切选定的列。您也可以跳过步骤 1,直接右键单击鼠标光标,然后在列表中选择“剪切”选项
  3. 将鼠标光标放在您想要粘贴列的列上。右键单击它,然后在列表中选择“插入剪切的单元格”
    How to swap columns in Excel: Dragging and other methods to move columns
  4. 它会将列粘贴到选定的位置。
How to swap columns in Excel: Dragging and other methods to move columns

如果您更喜欢使用键盘并且喜欢玩转快捷键,可以按照以下步骤在 Microsoft Excel 中重新排列列。

  1. 将光标放在要移动的列中的任何单元格上。按快捷键 Ctrl + 空格键选择整列。
  2. 使用快捷键 Ctrl + X 剪切该列。
  3. 再次,将光标放在您希望粘贴剪切列的列中的任何单元格上。
  4. 使用 Ctrl + 加号 (+) 快捷键将该列粘贴到选定位置。

通过复制、粘贴和删除交换多列

之前,我们学习了如何不使用鼠标拖动来交换单个列。如果我们要交换多列怎么办?同样的方法会奏效吗?

剪切/粘贴方法的讽刺之处在于它只能用于单列。如果您尝试一次性交换多列,它将不允许这样做,用户通常会收到错误消息:“您选择的命令无法对多个选定项执行。”

要执行多列切换,您可以使用复制、粘贴和删除的方法来重新排列工作表中的多列。操作如下:

  1. 第一步是选择要从一个位置移动到另一个位置的列。(选择的简便方法是单击第一列的标题,然后按住 Shift 键)。

另一种方法是仅选择要交换的列的标题,然后按快捷键 Ctrl + 空格键。这将选择包含数据的单元格,而不是选择整列。

How to swap columns in Excel: Dragging and other methods to move columns
  1. 接下来,我们将使用快捷键 Ctrl + C 复制选定的列,或者您可以右键单击该列,然后在弹出菜单中选择“复制”选项
  2. 将光标放在您希望在其之前插入复制列的列上。右键单击该列,然后在弹出菜单中选择“插入已复制的单元格”选项。
    How to swap columns in Excel: Dragging and other methods to move columns
  3. 它会将选定的单元格复制到所需位置。
How to swap columns in Excel: Dragging and other methods to move columns

注意:此方法的唯一缺点是您必须从列表中删除旧的列。因为它复制了列,所以同一列会出现两个副本。

  1. 最后,从 Excel 表格中删除原始列。

尽管如此,很多人可能会觉得这个过程比传统的拖动技术要麻烦,但对于大数据来说,它更有用,并且更适合那些宁愿使用键盘快捷键而不是鼠标光标的用户。

注意:上述方法也仅适用于相邻的列,因此您无法将其用于不相邻的列。

使用宏技术移动列

如果您擅长编码,那么您应该使用 VBA 脚本在 Microsoft Excel 中将列从一个位置移动到另一个位置。编写宏可以自动化 Excel 工作表中移动列的操作。

以下是在 VBA 编辑器窗口中编写宏代码的步骤:

步骤 1:打开需要修改的 Excel 工作表。

步骤 2:单击“开发工具”选项卡,然后选择“Visual Basic”选项。您也可以尝试使用快捷键 Alt + F11 打开 Visual Basic 编辑器窗口。

How to swap columns in Excel: Dragging and other methods to move columns

步骤 3:您会看到 VBA 编辑器窗口已打开。单击“插入”>“模块”。

How to swap columns in Excel: Dragging and other methods to move columns

步骤 4:在 VBA 窗口中写入以下代码:

VBA 代码


How to swap columns in Excel: Dragging and other methods to move columns

步骤 5:编写完代码后,按快捷键 F5 运行 VBA 代码。执行后,它将运行代码。

尽管上述宏可以自动化该过程,但用户通常会花费更多时间来指定要交换的列并定义它们的新位置,而不是复制粘贴和删除列。此外,无法保证 VBA 代码始终能够运行并生成预期的输出,因此每次都需要验证结果。因此,不建议为此任务使用 VBA 宏。