Excel 神操作:单列数据秒变多行多列,ROW+COLUMN 组合拳太香了!
- 2026-11-10 09:12:10
Excel 神操作:单列数据秒变多行多列,ROW+COLUMN 组合拳太香了!

C14=INDEX($A$1:$A$31,ROW(A1)+5*COLUMN(A1)-5)
你是不是也遇到过这种烦恼:一堆数据挤在一列里,想把它排成整齐的多行多列,手动复制粘贴到崩溃?😫
别慌!今天就用INDEX+ROW+COLUMN的组合公式,教你两种超实用的「单列转矩阵」方法,看完直接告别手动搬运!
🎯 先看效果:两种排版任你选
我们以 A1:A30 的 1-30 数字为例,看看两种不同的排版效果:

排版 1:Z 字形填充(先填满一行再换行)C1=INDEX($A$1:$A$31,5*ROW(A1)-5+COLUMN(A1))
排版 2:N 字形填充(先填满一列再换列)
🧩 核心原理:ROW 和 COLUMN 的魔法
要理解这两个公式,我们先搞懂两个关键函数:
1. ROW 函数:获取当前行号
ROW(A1)→ 返回 1(A1 单元格所在行号)当公式向下填充到 C2 时, ROW(A1)会自动变成ROW(A2)→ 返回2作用:生成连续的行序号,用来控制数据在矩阵中的「行位置」
2. COLUMN 函数:获取当前列号
COLUMN(A1)→ 返回 1(A1 单元格所在列号)当公式向右填充到 D1 时, COLUMN(A1)会自动变成COLUMN(B1)→ 返回2作用:生成连续的列序号,用来控制数据在矩阵中的「列位置」
3. INDEX 函数:按位置取数
INDEX(数据源区域, 行号) → 从数据源中取出指定行号的数据。我们的核心任务就是:用 ROW 和 COLUMN 算出正确的行号,让 INDEX 从 A 列精准取数。
✍️ 公式拆解:一步步看懂逻辑
🔹 公式 1:Z 字形(先填行,再换行)
目标:每 5 个数据为一行,依次填充。
=INDEX($A$1:$A$31,5*ROW(A1)-5+COLUMN(A1))
以 C1 单元格为例: ROW(A1)=1
, COLUMN(A1)=1行号 = 5*1 - 5 + 1 = 1→ 取 A1 的值1
以 D2 单元格为例: ROW(A2)=2, COLUMN(B1)=2行号 = 5*2 - 5 + 2 = 7→ 取 A7 的值7
逻辑:5*ROW(A1)-5 计算出当前行的起始位置偏移,再加上COLUMN(A1)得到当前单元格对应的 A 列行号。
🔹 公式 2:N 字形(先填列,再换列)
目标:每 5 个数据为一列,依次填充。
=INDEX($A$1:$A$31,ROW(A1)+5*COLUMN(A1)-5)
以 C14 单元格为例: ROW(A1)=1, COLUMN(A1)=1行号 = 1 + 5*1 - 5 = 1→ 取 A1 的值1以 D15 单元格为例: ROW(A2)=2, COLUMN(B1)=2行号 = 2 + 5*2 - 5 = 7→ 取 A7 的值7
逻辑:5*COLUMN(A1)-5 计算出当前列的起始位置偏移,再加上ROW(A1)得到当前单元格对应的 A 列行号。
🚀 实操步骤:小白也能一键搞定
- 准备数据源
:把你的数据放在 A 列(比如 A1:A30) - 选择目标区域
: Z 字形:选中 C1:G6(5 列 6 行) N 字形:选中 C14:H18(6 列 5 行) - 输入公式
:在编辑栏输入对应公式 - 批量填充
: 按 Ctrl+Enter填充整个区域
💡 小技巧:想改列数 / 行数?直接把公式里的
5换成你想要的数字就行!比如改成3,就是每 3 个数据换行 / 换列。
💡 举一反三:灵活改造公式
- 改变列数
:把公式里的 5改成N,就是每 N 个数据换行 / 换列 - 改变数据源
:把 $A$1:$A$31改成你的实际数据区域(记得加绝对引用$) - 从中间开始
:如果数据源从 A10 开始,公式里要对应加上偏移量
✨ 总结
- Z 字形公式
:适合阅读习惯从左到右的场景,比如排班表、日历 - N 字形公式
:适合数据需要按列分组的场景,比如分类汇总 - 核心思想
:用 ROW和COLUMN生成动态序号,再用INDEX精准取数,全程不用复制粘贴,数据更新自动同步!
学会这招,以后再遇到单列转矩阵的需求,直接掏出这两个公式,效率直接拉满💯!
本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。