乐于分享
好东西不私藏

Excel单行单列转多行多列,WRAP系列函数3秒搞定!

Excel单行单列转多行多列,WRAP系列函数3秒搞定!

点击蓝字 关注我吧!

今天这篇我们一起来学习函数:WRAPROWS、WRAPCOLS

它们可以把一维数组(单行或单列)轻松转换为二维数组,让数据重塑变得非常简单。

本期导航

01 功能语法

02 基础用法

03 实用场景

04 注意事项

文末有练习文档获取方式哟~

一、功能语法

WRAPROWS的功能是:把一维数组按行方向(水平方向)重新排列,先从左到右填充完一行,再换到下一行继续填充

WRAPCOLS的功能是:把一维数组按列方向(垂直方向)重新排列,先从上到下填充完一列,再换到下一列继续填充

语法结构一样:

=WRAPROWS(向量,每行列数,[异常返回值])

=WRAPCOLS(向量,每列行数,[异常返回值])

第1参数:数组【必填】

  • 要转换的一维数组

第2参数:每行列数/每列行数【必填】

  • 每一行/列最多包含多少个值

第3参数:异常返回值【可选】

  • 当数据无法完全填满时,用于填充空缺单元格的值。如果省略,默认返回#N/A错误

二、基础用法

1.把姓名转化为两行

可以用:

=WRAPCOLS(B2:B9,2)

也可以用:

=WRAPROWS(B2:B9,4)

但以上两个方法的填充顺序不同:WRAPCOLS是从第一列逐列填充,WRAPROWS从第一行开始逐行填充

2.处理错误值

当要转化为每行5个姓名的时候,第2行姓名数量不够,如果不填第3参数,空缺单元格会返回#N/A错误。

=WRAPROWS(B2:B9,5)

可以通过设置第3参数来处理错误值。

=WRAPROWS(B2:B9,5,"")

设置第3参数为:""(代表空文本),让空缺位置看起来更整洁。

二、实用场景

1.两列转化为多列

【要求】

把A2~B7的两列12个姓名转化为3行4列。

【公式】

=WRAPROWS(TOCOL(A2:B7),4)

【解析】

WRAPROWS只能处理一维数组,先用TOCOL把A2:B7的多列数据合并为一列,然后再用WRAPROWS按每行4列重新排列。

2.随机分组

【要求】

对B2~B13的12个人员进行随机分组,每组4人。

【公式】

=WRAPCOLS(SORTBY(B2:B13,RANDARRAY(12)),3)

【解析】

先用RANDARRAY(12)生成12个随机小数,再用SORTBY根据这些随机数对姓名进行升序排列,最后用WRAPCOLS把数据变成3行。

由于RANDARRAY是易失性函数,每次按F9可以刷新生成的随机数。我们每按一次F9就可以得到新的分组。

3.有规律文本拆分处理

【要求】

把B2单元格的信息拆分为每2个一行。

【公式】

=WRAPROWS(TEXTSPLIT(B2,","),2)

【解析】

先用TEXTSPLIT把B2中的文本按顿号拆分成一行,再用WRAPROWS按每行2个内容重新排列。

三、注意事项

1..版本要求:Microsoft 365、Excel 2024或者新版的WPS才可以使用这个函数哦~

2.它们是动态数组函数。结果会自动“溢出”到相邻的单元格,如果数据溢出区域有其他内容遮挡,会返回溢出错误#SPILL!。

3.第1参数“向量”参数必须是单行或单列。如果传入多行多列的二维区域,函数会返回#VALUE!错误。

4.第2参数每行列数/每列行数必须是≥1的整数。如果小于1,返回#NUM!错误。若是非整数,会被截断为整数。


后台回复“WRAP”可以获得练习案例哦~

如果对你有帮助,点赞、关注再划走呀!