如何隔行提取数据,且排列成多行多列的数据?用高阶函数很容易实现。
案例:将下图 1 中 A 列的姓名提取出来,排列成 3 行 2 列的数据表。
效果如下图 2 所示。
解决方案:
1. 在 E2 单元格中输入以下公式 --> 回车:
=INDEX(A2:A22,SEQUENCE(3,2,1,4))
这段公式中较难理解的就是 SEQUENCE(3,2,1,4),所以我先单独把这段单独演示出来讲解,帮助大家搞懂。
2. 在任意空单元格中输入以下公式 --> 回车:
=SEQUENCE(3,2,1,4)
公式释义:
sequence 函数的作用是在数组中生成一系列连续数字;
语法为 SEQUENCE(行,[列],[开始数],[增量]);
行:要返回的行数
[列]:要返回的列数
[开始数]:序列的第一个数
[增量]:数组中每个连续值递增的值
这段公式表示生成一个 3 行 2 列的数组区域,第一个数为 1,以 4 为步长递增
3. 再回到完整公式看一下释义。
=INDEX(A2:A22,...)
公式释义:
index 函数的作用是返回表格或区域中的值或值的引用;
公式表示从区域 A2:A22 中提取出对应排位的数值,由步骤 2 的结果中可以看出,对应的排位分别为 1、4、9、13、17、21,正好就是 A 列中的每个姓名的位置