重点内容
适用版本
桌面版通用(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 版本」执行
- 转置完成后,再把 "xxx" 替换回等号
=
Find and Replace 对话框,Find what 填 = 、Replace with 填临时文字的界面
这个方法转置完之后,目标单元格依然是公式引用,原始数据一改,转置后的结果也会跟着更新。
函数速查
| 函数 | 语法 | 用途 | 例子 |
|---|---|---|---|
| TRANSPOSE | =TRANSPOSE(array) | 把行列数据互换 | =TRANSPOSE(A1:C1) |
实操示例
场景:一份月度数据本来是横向排列(1月、2月、3月...在同一行),想改成竖向排列方便做数据透视表。
- 复制原始横向数据
- 目标位置右键 →
- 预期结果:数据变成竖向排列,行列互换
快捷键速查
| 操作 | Windows | Mac |
|---|---|---|
| 数组公式确认 | Ctrl + Shift + Enter | Cmd + Shift + Enter |
| 粘贴特殊 | Ctrl + Alt + V | Cmd + Ctrl + V |
学完你会
常见错误
- 忘记 TRANSPOSE 函数(旧版本)需要按 Ctrl+Shift+Enter 而不是普通 Enter,导致公式出错
- 转置后原始范围里的空白格变成 0,误以为是数据错误
- 用「粘贴特殊转置」后修改原始数据,却发现转置结果没有跟着更新(因为这个方法没有动态链接)
Sources
Blog / Website: