课程
在 Excel 中对数据进行转置,可以翻转数据的方向,把行变成列、把列变成行。当您需要重构数据集以便更好地分析、可视化或报告时,此技巧尤为实用。
无论您是在为数据透视表做准备、创建汇总视图,还是仅仅需要改变数据布局,Excel 提供三种主要方法来转置数据:
-
选择性粘贴(Paste Special)——快速的一次性转换
-
TRANSPOSE()函数——基于公式的动态方法 -
Power Query——适用于更大数据集的高级方法
在本文中,您将逐步学习如何使用每种方法、各自的适用场景以及需要注意的重要事项。如果您是 Excel 新手,欢迎探索我们的 Data Analysis in Excel 课程,学习数据透视表和逻辑函数等基础操作。
快速答案
尽管 Excel 提供了多种转置数据的方法(如前文所述),最快的方法是使用“选择性粘贴”:
-
选中并复制您的数据(
Ctrl + C)。 -
在希望显示转置结果的目标单元格上单击右键。
-
选择“选择性粘贴(Paste Special)。”
-
勾选“转置(Transpose)”选项。
-
单击确定。
这会立刻将行与列互换,能快速满足大多数转置需求。
Excel 中的转置是什么意思?
在 Excel 中,转置是指将行转换为列、将列转换为行。本质上就是将数据旋转 90 度,改变其方向,同时保留所有信息。
当您转置数据时,第一行会变成第一列,第二行会变成第二列,依此类推。
例如,如果数据集中产品名称在行、月度销量在列,转置后产品名称将出现在列中,而月度销量出现在行中。
在 Excel 中进行转置的方法
Excel 提供三种不同的转置方法,各有优势和理想用例。下面我们逐步讲解,帮助您选择合适的方法。
1. 使用“选择性粘贴”转置数据
“选择性粘贴”是 Excel 中最简单的转置方式。它会按转置方向创建数据的一次性副本。让我们通过一个示例来演示。假设我们有如下纵向排列的区域销售数据:

纵向原始数据示例。图片来源:作者。
要将这些数据从纵向布局转为横向:
- 选中需要转置的所有数据(本例为单元格 A1:B5)。
- 复制数据(Ctrl+C 或右键选择复制(Copy))。
- 单击希望显示转置结果的单元格(例如 D1)。
- 右键,在上下文菜单中选择选择性粘贴(Paste Special)。

“选择性粘贴”方法与“转置”选项。图片来源:作者。
- 在选择性粘贴对话框中,勾选转置(Transpose)并单击确定(OK)。
转置后的结果如下所示:

转置原始数据后的结果。图片来源:作者。
您会注意到数据被完全旋转——原来在行中的现在在列中,反之亦然。原本在 A 列的区域名称现在位于第 1 行,原本在 B 列的销售数据现在位于第 2 行。
适用场景:
- 快速的一次性数据转换
- 需要不依赖公式的简洁方案
- 适用于无需频繁更新的小型数据集
优点:几次点击即可完成,简单快捷。
局限:生成静态副本,原始数据变更不会同步更新。
2. 使用 TRANSPOSE() 函数
TRANSPOSE() 函数提供了相对于“选择性粘贴”的动态替代方案。不同于创建静态副本的方法,该函数会与原始数据保持实时链接,一旦源数据发生变化,转置结果会自动更新。
我们继续用相同的区域销售数据来演示其用法:
-
首先,选择用于显示转置结果的目标区域。以本示例而言,需选择能容纳转置后结构的单元格范围。由于原数据为 5 行 × 2 列,目标范围需为 2 行 × 5 列。
-
选定目标单元格后,在编辑栏输入
TRANSPOSE()公式:

Excel 中的 TRANSPOSE() 函数。图片来源:作者。
- 在现代版 Excel(2019 或 Microsoft 365)中,直接按Enter 即可。在旧版 Excel 中,由于这是数组公式,需要按 Ctrl+Shift+Enter。
结果将与先前示例相似,但有一个重要区别:如果您修改了原始数据中的任何值,转置结果会自动相应更新。

使用 TRANSPOSE() 函数后的结果。图片来源:作者。
适用场景:
- 源数据经常变化
- 需要在原始与转置数据之间保持实时连接
- 用于构建需要自动刷新的动态报告或仪表板
优点:建立动态链接,源数据变化时自动更新。
局限:需要准确选择目标区域大小;旧版 Excel 需理解数组公式的用法。
3. 使用 Power Query 转置数据
Power Query 是 Excel 最强大的数据转换工具,非常适合处理大型数据集和复杂转换。虽然步骤比前两种方法更多,但灵活性无与伦比。
我们继续用相同的区域销售数据来演示 Power Query 如何进行转置:
- 在 Excel 功能区单击数据选项卡,然后选择获取数据(Power Query)。

在 Excel 中启动 Power Query。图片来源:作者。
- 在弹出的对话框中,您会看到各种数据源选项。由于我们当前使用的是已在 Excel 中的小示例,选择空白表,以便手动输入数据。但请记住,Power Query 支持的数据源多样性正是其核心优势之一。

选择“空白表”作为数据源。图片来源:作者。
- 在下一屏中,将您的数据输入到表格(或从工作表中粘贴)。如果数据包含列标题,请勾选将第一行用作标题。

在 Power Query 中录入数据。图片来源:作者。
- 单击下一步后,会打开 Power Query 编辑器并加载您的数据。现在,单击功能区中的转换选项卡,并从菜单中选择转置。

在 Power Query 中通过“转置”功能转换数据。图片来源:作者。
-
您会立刻在预览窗口中看到转置后的数据。请注意,Power Query 会自动翻转行与列。公式栏显示
Table.Transpose(Source),指示所应用的转换。

在 Power Query 中转置的结果。图片来源:作者。
- 确认转换无误后,在开始选项卡中单击关闭并加载,将转置结果加载回 Excel 工作表。
适用场景:
- 大型数据集,其他方法可能较为繁琐时
- 需要在转置之外执行更多转换时
- 作为更复杂的数据清洗与准备流程的一部分
- 需要将重复性任务自动化时
优点:
- 非常适合大型数据集和复杂数据转换
- 创建的查询可在源数据更改时刷新
- 可在同一流程中执行额外的数据清洗
- 可保存为可重复的流程
局限:
- 步骤比其他方法更多
- 对初学者来说学习曲线更陡峭
- 会打开单独的编辑器窗口
转置列、行与表
在了解了 Excel 中三种主要的转置方法后,我们简要讨论一些您可能会遇到的特定情形。
如何将列转置为行
当数据按列组织而您需要按行显示时,可使用我们介绍过的任意方法:
使用“选择性粘贴”:
- 选中并复制基于列的数据(Ctrl + C)。
- 在希望显示数据的新行的首个单元格上右键单击。
- 单击选择性粘贴,勾选转置。
- 单击确定,即可将列翻转为行。
这会立即重排数据,但会生成静态副本。
使用 TRANSPOSE() 函数:
-
选择一个空白区域,其行数与原始列的行数相匹配。
-
输入
=TRANSPOSE(A1:A5)(根据需要调整)。 -
按Enter(旧版请按 Ctrl + Shift + Enter)。
这样可使转置结果与原始列保持连接,自动随之更新。
如何将行转置为列
如果您的数据按行排列,但需要以列形式显示,可以使用 Excel 的“选择性粘贴”进行快速一次性转换,或使用 TRANSPOSE() 函数实现动态转置。
使用“选择性粘贴”:
- 选中并复制基于行的数据(Ctrl + C)。
- 在希望显示列的目标单元格上右键单击。
- 单击选择性粘贴,并勾选转置复选框。
- 单击确定,即可将行翻转为列。
注意,步骤与将列转为行完全相同。Excel 视行与列为可互换。
使用 TRANSPOSE() 函数:
-
选择一个空白区域,其列数与原始行的列数一致。
-
输入
=TRANSPOSE(A1:F1)(按需调整范围)。 -
按Enter 或 Ctrl + Shift + Enter 。
此后,原始行中的任何更改都会自动反映到转置后的列中。
如果您处理的是需要频繁更新的大型数据集,Power Query 也是一种行列互换的高效自动化方式,且可保持数据链接。前文已提供 Power Query 用于转置的步骤。
如何转置 Excel 表格
当处理整张表或结构化区域时:
- 对于较小的表,直接选中整个范围,按我之前所示使用选择性粘贴 → 转置。
- 对于包含大量行列的表,Power Query 提供更强的控制力,能高效处理任意规模的表格。
- 若仅需转置表格的一部分,您可能需要分步处理——对某些部分进行转置,而保留其他部分的原始方向
请记住,转置表格不仅会交换数据,也会交换表头。很多情况下,您会希望将第一行变为第一列(反之亦然),以维持正确的数据标注。
其他注意事项
在 Excel 中进行转置时,注意以下要点,可帮助您避免常见问题并优化工作流程:
处理空白单元格
TRANSPOSE() 函数可能会将空白替换为 0,这并非总是理想结果。若希望在使用该函数时保留空白,可使用嵌套 IF() 语句:
=TRANSPOSE(IF(A1:F5="","",A1:F5))
该公式会检查原始范围内的单元格是否为空,为空则在转置结果中保持为空,而不是转换为 0。
保持与源数据的链接
如前所述,三种转置方法在处理源数据链接方面有所不同:
-
“选择性粘贴”会创建与原始数据无连接的静态副本。
-
TRANSPOSE()函数可保持动态链接,源数据变化时自动更新。 -
Power Query 允许您在需要时刷新连接,从而掌控更新时机。
请根据源数据变更的频率以及是否需要自动更新,选择合适的方法。
将 TRANSPOSE() 与条件格式一起使用
使用 TRANSPOSE() 函数时请注意,格式不会随之携带。如果原始数据使用了条件格式来突出显示重要数值,您需要对转置后的区域重新应用条件格式规则。
这适用于所有视觉格式,包括单元格颜色、字体和边框。转置仅影响数值本身,不会传递其视觉呈现。
结语
在 Excel 中进行数据转置是一项有价值的技能,能显著改进数据组织与分析流程。本文介绍的三种方法各具优势,具体选择取决于您的实际需求。
如需在 Excel 中进一步掌握高级数据处理技巧,欢迎探索我们的 Excel Fundamentals 技能路径,涵盖多项提升数据分析能力的技能。如果您希望在 Excel 之外拓展数据转换技能,请查看我们的教程 How to Transpose a Matrix in R,了解在 R 环境中的类似技术。
Vinod Chugani 的职业生涯始于东京,曾任摩根大通最年轻的对冲基金销售台负责人,随后在雷曼兄弟创下个人销售纪录,之后又打造了覆盖 30 个国家的电子分销业务,营收突破 1 亿新元,随后转向数据领域。他毕业于杜克大学经济学专业,亦为 NYC Data Science Academy 校友,并在 100 多名申请者中成为Hugo Bowne-Anderson 在 Maven 开设的 “Building AI Applications” 课程的三位奖学金获得者之一。目前,他为 DataCamp、KDnuggets、Machine Learning Mastery 和 Statology 撰稿,内容涵盖从统计学到代理式 AI 等主题,并在 NYC Data Science Academy 指导数据从业者,已完成超过 1,000 场一对一辅导。
常见问题解答
Excel 中的转置是什么意思?
在 Excel 中,转置指将行转换为列、将列转换为行,实质上是将数据旋转 90 度。此类重构会改变方向,但保留您所有的原始信息。
如何在 Excel 中快速转置数据?
选中并复制数据,在目标单元格上右键,选择“选择性粘贴”,勾选“转置”。无需任何公式,即可立刻将行和列互换。
当源数据发生变化时,转置数据会自动更新吗?
仅在使用 TRANSPOSE() 函数时会自动更新,该函数会与源数据建立动态链接。“选择性粘贴”会创建不更新的静态副本,而 Power Query 需要手动刷新。
我可以只转置 Excel 工作表的一部分吗?
可以。只需在使用任意一种方法前,先选中您想要转置的特定范围即可。这样您就能重构部分数据,而不影响其他部分。
为什么要用 Power Query 而不是“选择性粘贴”来转置数据?
对于大型数据集、复杂转换以及需要创建可复用流程的情况,Power Query 更为理想。它提供比简单方法更多的控制力和额外的数据清洗选项。
转置 Excel 数据时能保留格式吗?
不能。使用 TRANSPOSE() 函数或 Power Query 时,格式不会随之保留。您需要对转置后的数据重新应用任何条件格式、颜色或字体。
