excel函数技巧:map+textsplit提取数据形成表格-趣帮office教程网

如图,A列为数据源,想要提取出每个单元格里面的好数字并汇总求各,体现在B列中,公式如下:

=MAP(A2:A4,LAMBDA(x,SUM(--TEXTSPLIT(x,TEXTSPLIT(x,VSTACK(SEQUENCE(10)-1,"."),,1),,1))))

公式思路:

因为要求的结果正好与A列单元格一一对应所以使用map函数来处理,如果源数据有多列也可以使用offset函数配合map函数。当然我是不喜欢学习太多循环函数的,主张以reduce为主来解决问题,那么reduce函数的公式如下:

=DROP(REDUCE("",A2:A4,LAMBDA(x,y,VSTACK(x,SUM(--TEXTSPLIT(y,TEXTSPLIT(y,VSTACK(SEQUENCE(10)-1,"."),,1),,1))))),1)

也是可以解决的。但公式要比map长,有时候仍然愿意使用map的原因就是:这种与目标数组长度或宽度等长的数组,使用map生成比较准确,行列不会发生变动,便于传递给filter等函数。