EP07. “Transpose 转置数据”
🔒 登录后可标记已读- 数据表格方向一开始就设计反了(该横的排成竖的),不想整份重打一次?Transpose 一个动作行列互换就搞定
- 粘贴特殊转置最快,但跟原数据没有动态链接;TRANSPOSE 函数外加一招「转置魔法」,能保留链接,原数据一改结果跟着变
- 转置后空白格常会冒出奇怪的 0,这篇也顺便处理
- 前置知识:会基本的复制粘贴就够
- 学完能应付各种行列互换的需求,不管要不要保留动态链接都有对应做法
重点内容
适用版本
桌面版通用(Excel 365 / 2021 / 2019 等)。TRANSPOSE 函数在 Excel 365 / 2021 支持动态数组「溢出(spilling)」,旧版本需要用数组公式方式输入。
四种方法怎么选
| 方法 | 跟原数据有动态链接吗 | 适合场景 |
|---|---|---|
| 方法一 粘贴特殊转置 | ❌ 没有 | 只转一次,操作最快 |
| 方法二 TRANSPOSE 函数 | ✅ 有 | Excel 365/2021,原数据改了自动更新 |
| 方法四 转置魔法 | ✅ 有 | 旧版本也想要动态链接,愿意多花几步 |
(方法三是方法二的附加技巧,用来处理转置后多出来的 0,不算独立选项,见下面说明。)
方法一:粘贴特殊转置
- 选择范围 A1:C1
- 右键点击并选择 Copy
- 选择目标单元格 E2
- 右键点击并选择 Paste Special
- 勾选 Transpose 选项
- 点击 OK
[截图:Paste Special 对话框,勾选了 Transpose 选项的界面]
📌 这个方法是纯粘贴结果,跟原始数据没有动态链接,原数据改了转置后的结果不会跟着变。
方法二:TRANSPOSE 函数
- 选择新的目标单元格范围
- 输入
=TRANSPOSE( - 选择原始范围 A1:C1,输入右括号关闭
- 按
Ctrl + Shift + Enter完成公式输入
Excel 365 / 2021 用户可以直接按 Enter,公式支持「溢出(spilling)」动态数组,自动填满转置后的范围。
方法三:转置后不要 0 值
TRANSPOSE 函数遇到原始范围里的空白单元格,会转成数字 0,可以用 IF 函数组合处理,让空白维持空白而不是显示 0。
方法四:转置魔法(保留与来源单元格的动态链接)
- 复制原始范围
- 用「粘贴链接(Paste Link)」贴到目标位置(此时公式是
=A1这种引用) - 用「查找和替换(Find and Replace)」把公式里的等号
=替换成一个不会跟公式冲突的临时文字,例如 "xxx" - 对这份「xxx 版本」执行 Paste Special → Transpose
- 转置完成后,再把 "xxx" 替换回等号
=
[截图:Find and Replace 对话框,Find what 填 = 、Replace with 填临时文字的界面]
这个方法转置完之后,目标单元格依然是公式引用,原始数据一改,转置后的结果也会跟着更新。
函数速查
| 函数 | 语法 | 用途 | 例子 |
|---|---|---|---|
| TRANSPOSE | =TRANSPOSE(array) | 把行列数据互换 | =TRANSPOSE(A1:C1) |
实操示例
场景:一份月度数据本来是横向排列(1月、2月、3月...在同一行),想改成竖向排列方便做数据透视表。
- 复制原始横向数据
- 目标位置右键 → Paste Special → 勾选 Transpose → 确定
- 预期结果:数据变成竖向排列,行列互换
快捷键速查
| 操作 | Windows | Mac |
|---|---|---|
| 数组公式确认 | Ctrl + Shift + Enter | Cmd + Shift + Enter |
| 粘贴特殊 | Ctrl + Alt + V | Cmd + Ctrl + V |
学完你会
- ✅ 分得清四种转置方法,知道哪些有动态链接、哪些没有
- ✅ TRANSPOSE 函数在旧版本要按
Ctrl + Shift + Enter,365/2021 直接 Enter 就有溢出 - ✅ 转置后出现多余的 0,知道是空白格被转成数字,能用 IF 处理
常见错误
- 忘记 TRANSPOSE 函数(旧版本)需要按
Ctrl + Shift + Enter而不是普通 Enter,导致公式出错 - 转置后原始范围里的空白格变成 0,误以为是数据错误
- 用「粘贴特殊转置」后修改原始数据,却发现转置结果没有跟着更新(因为这个方法没有动态链接)
Sources
Blog / Website: