如何在 Excel 中反转数据

17 Mar 2025 | 6 分钟阅读

在 Excel 中,反转(或翻转)数据意味着将行重新排列为列,反之亦然。此调整对于重新排列数据集以更好地适应分析或演示要求非常有用。Excel 提供了不同的反转信息的方法,包括翻译功能、方法和 Power Query。了解这些策略有助于客户有效地操作 Excel 数据结构以获得所需的输出。

尽管有不同的方法可以在 Excel 中翻转数据,但遗憾的是,没有内置功能。但是,您可以使用基本的组织技巧、公式或 VBA 来实现此目的。

在本教程中,我们将介绍在 Excel 中有效翻转行、列和表格数据的方法。

本教程涵盖

  • 使用 SORT 和辅助列翻转数据
  • 垂直翻转数据(倒序颠倒)
  • 水平翻转数据
  • 使用公式翻转数据
  • 使用 SORTBY 函数(适用于 Microsoft 365)
  • 使用 INDEX 函数
  • 使用 VBA 翻转数据

使用 SORT 和辅助列翻转数据

在 Excel 中翻转数据的最简单方法之一是创建辅助列,然后使用它对数据进行排序。

1. 垂直翻转数据(倒序颠倒)

假设您在某一列中有一个名称列表(如下图所示),并且您想要反转此数据的顺序。

How to Invert Data in Excel

以下是向上翻转信息的步骤

  • 在相邻列中,使用“helper”作为列标题
  • 在辅助列中,插入一个数字序列(1、2、3 等)。您可以使用此处概述的方法快速完成此操作。
    How to Invert Data in Excel
  • 选择完整数据集,包括辅助列。
  • 单击数据选项卡。
    How to Invert Data in Excel
  • 单击排序图标。
    How to Invert Data in Excel
  • 在“排序依据”下拉列表中,选择“Helper”
  • 从“顺序”下拉列表中,选择最大到最小。单击“确定”。
    How to Invert Data in Excel

这些更改将根据辅助列值对信息进行排序,从而导致信息中名称的请求发生切换。


How to Invert Data in Excel
  • 完成后删除辅助列

在此示例中,我向您展示了如何仅当您有一列时翻转信息。但是,您可以对整个表格使用相同的方法。选择整个表格,然后使用辅助列按降序对信息进行排序。

2. 水平翻转数据

您还可以使用类似的方法在 Excel 中水平翻转信息。


How to Invert Data in Excel

Excel 提供了使用排序对话框(“从左到右排序”突出显示)水平排序数据的选项。

假设您有一个表格(如下所示),并且需要水平翻转其中的数据。

以下是执行此操作的步骤


How to Invert Data in Excel
  • 选择完整数据集,包括辅助行。
  • 单击数据选项卡 -> 排序图标
    How to Invert Data in Excel
  • 在“排序”对话框中,选择选项按钮。
    How to Invert Data in Excel
  • 在“排序交换”框中,选择“选项”按钮。“排序选项”对话框窗口将出现。单击“从左或右排序”,然后单击“确定”。
    How to Invert Data in Excel
  • “排序依据”下拉菜单中,选择包含辅助列的行(例如,第 1 行)。
    How to Invert Data in Excel
  • 单击“确定”。结果,您的数据将被翻转。
    How to Invert Data in Excel

使用公式翻转数据

Microsoft 365 包含一些公式,可以非常简单地更改 Excel 中列或表格的请求。在本节中,我将向您展示如何使用 SORTBY 公式(确保使用 Microsoft 365 或更高版本的 Excel)或 Index 公式(如果您使用的是 Microsoft 365 以下版本)实现此目的。

假设您有一个表格(如下图所示),并且需要翻转其中的信息。


How to Invert Data in Excel

现在,在最左侧标题的单元格下方使用以下公式


How to Invert Data in Excel

在这里,我还包含了第三个参数,它显示将从中获取值的列号。为了使此公式动态化,我使用了列功能,当您将其复制到一侧时,它会继续将列值从 1 调整到 3。完成后,您可以将公式完全转换为值以确保静态结果。

使用 INDEX 函数翻转数据

如果您不想使用 SORTBY 选项,您仍然可以使用出色的列表功能。假设您有一个表格(如下图所示),并且需要翻转其中的信息。

公式如何工作?

第一个公式使用 INDEX 函数,该函数根据指定的行号和列号返回单元格的值。

真正的魔力发生在第二个参数中,我在其中使用了 Rows 函数。它需要两个参数,第一个参数是第一个单元格引用,并允许第二个引用随着公式向下复制而调整。但是,当它向下遍历列时,主引用会更改为 A3,然后是 A4,依此类推,而后续引用保持不变,因为我已将其锁定并明确。

以下是执行此操作的公式


How to Invert Data in Excel
How to Invert Data in Excel

在这里,我还包含了第三个参数,它指示应从中获取值的行号。为了使其动态化,我使用了行函数,当您将其复制到各列时,它将继续调整行号(1、2、3)。完成后,您可以将公式完全转换为值以确保一致的结果。

注意:当您使用方法更改 Excel 中信息性索引的顺序时,原始顺序不会保留。如果您想将初始顺序保存到已组织的数据中,您可以手动应用它,或者从第一个信息性索引重新排列设计到新的。

使用 VBA 翻转数据

如果您需要经常在 Excel 中翻转信息,您也可以使用 VBA 技术。VBA 宏代码可以复制并粘贴到 VBA 编辑器中,然后在同一个工作簿中重复使用。此外,您还可以将代码存储在单独的工作簿中作为 Excel 加载项,从而允许您在框架上的任何练习手册中使用它。

此代码如何工作?

  • 上面的代码首先计算数据集合中的总行数,并将结果赋给变量 EndNum。
  • 然后它利用 Do While 循环重新排列数据。它通过交换第一行和最后一行来组织数据,然后继续处理倒数第二行的第二行,也交换它们。然后这个过程继续到倒数第三行的第三行,依此类推。
  • 在所有排序完成后,循环结束。此外,代码在执行代码时将 Application.ScreenUpdating 属性设置为 FALSE,并在代码结束后返回 TRUE。这确保您在屏幕上看不到实时发生的更改,同时也加快了处理速度。

如何使用代码?

要在 Excel 中实现 VBA 代码,请遵循以下步骤

  • 打开您的 Excel 工作表。按住 ALT 键并按 F-11 打开 VBA 编辑器。或者,您也可以单击“开发人员”选项卡并单击“Visual Basic”图标。
  • Excel 将为您打开 VBA 编辑器窗口。您将在窗口的左侧找到项目资源管理器选项。如果看不到它,请选择“视图”选项卡,然后选择“项目资源管理器”。
    How to Invert Data in Excel
  • 双击项目资源管理器中的模块符号以启动其代码窗口。
  • 打开项目资源管理器窗格后,将上述 VBA 代码粘贴到代码窗口中。
    How to Invert Data in Excel
  • 要执行 VBA 代码,首先选择要翻转的数据集(不带标题)。选择数据后,转到 VB Supervisor 并单击工具栏中的绿色播放按钮,或选择代码中的任意一行,然后按 F5 键。
    How to Invert Data in Excel
  • 所以这些是您可以在 Excel 中翻转信息(即切换信息索引的请求)的一些技术。

结论

在 Excel 中反转数据有助于组织和结构化信息,以用于分析或演示目的。用户可以反转数据以将行转换为列,反之亦然,从而更轻松地检查、比较和显示信息。