WRAPCOLS 函数¶
函数概述¶
WRAPCOLS 用于把一维数据(单行或单列的“向量”)按指定的每列行数重新排布成多列区域。它会从上到下填满一列,再继续填下一列,结果以“溢出(spill)”形式返回一个二维数组。
常见用途:
- 将名单/编号等单列数据快速分列排版(如每列10行)
- 将连续序列按固定行数分组展示
- 不足一整列时用指定值补齐(可选)
基础语法¶
参数说明¶
| 参数 | 必填 | 含义 | 典型写法 |
|---|---|---|---|
vector |
是 | 需要重排的一维区域或数组(单行/单列) | A2:A20、B1:K1、SEQUENCE(25) |
wrap_count |
是 | 每列的行数(填满这行数后换到下一列) | 10、5、ROWS(A2:A11) |
[pad_with] |
否 | 最后一列不够 wrap_count 行时,用该值补齐;省略则补 #N/A |
""、"-"、0 |
用法示范¶
示例1:每列5行分列¶
数据源(vector)
假设 A2:A13 是一列姓名:
| 姓名 |
|---|
| 张三 |
| 李四 |
| 王五 |
| 赵六 |
| 孙七 |
| 周八 |
| 吴九 |
| 郑十 |
| 钱一 |
| 冯二 |
| 陈三 |
| 褚四 |
公式
结果形态(示意):每列5行,从上到下填满一列再到下一列
| 第1列 | 第2列 | 第3列 |
|---|---|---|
| 张三 | 周八 | 陈三 |
| 李四 | 吴九 | 褚四 |
| 王五 | 郑十 | #N/A |
| 赵六 | 钱一 | #N/A |
| 孙七 | 冯二 | #N/A |
说明:因为 12 个值按每列 5 行,需要 3 列;最后一列不足会用
#N/A补齐(因为没写pad_with)。
示例2:用空白补齐缺口¶
仍使用上面的 A2:A13。
公式
效果
- 最后一列不够的位置会显示为空白(而不是
#N/A) - 更适合做打印排版或报表展示
示例3:用动态行数做“每列N行”¶
如果你想让每列行数跟某个区域的行数一致,例如用 D2:D11 的行数(10行)作为每列行数:
公式
适用场景
- 你在模板里固定了“每列展示行数”的参考区域
- 调整参考区域行数即可改变分列规则,无需改公式中的数字
示例4:配合序列快速造样例¶
不依赖现有数据,直接把 1~23 分成每列 6 行:
公式
效果
- 会输出若干列,每列6行
- 最后一列不足用
-补齐
总结¶
WRAPCOLS的核心是:按“每列行数”重排一维数据,从上到下填满一列再换列。- 写法固定为
=WRAPCOLS(vector, wrap_count, [pad_with]),其中pad_with用来控制最后一列缺口的显示(不写则为#N/A)。 - 在报表排版、名单分列、固定行数组合展示时非常高效;搭配
ROWS()、SEQUENCE()等函数还能实现动态与自动化排版。