Excel数据行列互换有三种高效方法:一是选择性粘贴转置,适合一次性静态调整;二是TRANSPOSE函数动态转置,分手动选区数组公式和新版自动溢出两种方式;三是Power Query结构化转置,支持一键刷新,适用于重复性报表处理。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你需要把Excel里横向排列的销售月份数据变成纵向排列,或者把产品名称从一列拉成一行标题,这种行与列位置互换的操作必须快速完成,不能手动逐单元格复制粘贴。
用选择性粘贴一键转置(静态)
这是最直接、零公式、适合一次性调整的方案,适用于领导临时要你改个格式交稿的场景。
选中原始数据区域,包括标题行和所有内容,按 Ctrl + C 复制。
右键点击目标起始单元格(比如空白区域的 E1),在弹出菜单中选择“选择性粘贴”→ 在对话框中勾选【转置】→ 点击确定。
这一步操作起来很简单,直接把复制好的数据倒过来贴上去就行。但注意:目标区域必须完全为空,否则会提示“无法对多重选择区域执行此操作”。
用TRANSPOSE函数动态转置
当你改完原始表格里的数字,希望下面那个转置后的汇总表自动跟着变,就得用这个方法。
方法一:手动选区+数组公式
① 先数清原始数据有多少行多少列——比如原区域是 A1:D6(4列×6行),那么你要在目标位置选中一个【6列×4行】的空白区域(如 G1:L4)。
② 在选区左上角单元格(G1)输入公式:=TRANSPOSE(A1:D6),别漏掉等号。
③ 按 Ctrl + Shift + Enter(旧版Excel)或直接按 Enter(Excel 365/2021及以上版本)确认。
方法二:新版动态数组自动溢出(推荐)
在任意空白单元格输入 =TRANSPOSE(A1:D6) 后直接按 Enter,Excel会自动在下方右侧铺满结果区域,无需预先选中整块区域——但前提是你的Excel版本支持动态数组功能。
注意:如果原始区域包含空行或空列,TRANSPOSE会把它们也转成对应位置的空白,可能打乱结构,务必提前清理。
用Power Query做可复用的结构化转置
如果你每周都要处理一批格式相同的销售报表,每次都要把“产品-月份”横表转成“月份-产品”纵表,那就该用这个方法——它能保存步骤,下次一键刷新。
选中原始数据任意单元格 → 点击「数据」选项卡 → 「从表格/区域」→ 勾选「表包含标题」→ 点击确定。
进入Power Query编辑器后,点击左上角全选按钮(或按 Ctrl + A)→ 右键任意列标题 → 选择「转置」。
转置后第一行通常是数字编号(如 Column1、Column2),这不是错误——点击「转换」选项卡 → 「使用第一行作为标题」,列名就恢复正常了。
点击左上角「关闭并上载」→ 转置后的新表将作为独立表格插入当前工作簿,且后续只要原始数据更新,右键新表 → 「刷新」即可同步重算。

















