编程技术分享平台

网站首页 > 技术教程 正文

excel函数技巧:reduce+row+column将表格转换成以姓名为主的表格

xnh888 2024-11-08 14:44:41 技术教程 30 ℃ 0 评论





如图,源数据中的表格将名字整合到以宿舍号为准的一行中,如何转换成以姓名为准,每个姓名一行,并且包含年级、宿号舍、床位号等信息的表格,公式如下:

=LET(array,DROP(REDUCE("",原始格式!C2:H66,LAMBDA(x,y,VSTACK(x,HSTACK(OFFSET(y,,-COLUMN(y)+1),y,OFFSET(y,,-COLUMN(y)+2),OFFSET(y,-ROW(y)+1,))))),1),

FILTER(array,INDEX(array,,2)<>0))

公式思路,本例公式的思路为以姓名为循环对象,根据姓名所在的行列提取中其所对应的年级、宿舍号、床位号信息。

本例的特点是row\column函数的使用,它利用的reduce在引用一个区域数组时会自带其索引信息的特点,根据每个行号或者列号的信息找到了第一行,第一列、第二列的信息,并用hstack函数组合到一起。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表