最近看到一个需求, 很多同学感觉这玩意又要VBA来处理了吧,但是根据我最近写了这么久的365函数教程,这个问题函数也可以处理!
▍数据源:A、B列是从系统中导出的每个购买的明细,他们格式为书名 金额,一个人多本书使用逗号分隔▍需求说明:按照书名,统计对应的书一个销售了多少本,收到多金额
需要先把每一个中的内容按照逗号分隔符,这点可以使用TEXTSPLIT函数处理,合并到一列,可以使用VSTACK上下堆积到一起,提取书名,使用TEXTBEFORE函数,拆分即可!使用FILTER函数,筛选出结果,使用ROWS或者COUNTA即可
REDUCE函数可以遍历B列的内容,我们把每一个内容,使用TEXTSPLIT按照逗号拆分,下面公式中的,s表示初始值,c表示当前遍历的内容,VSTACK把每次处理后的结果和初始值s上下追加成一列!
第一次的结果我们后面要多次使用,可以使用LET函数申明一个变量data,后面使用data代替!UNIQUE函数可以对数组内容去重,TEXTBETFOR函数可以提取分隔符之前的内容,而且第一次参数支持数组,直接按照“》”提取即可!分割后符号还需要再加上TEXTBEFORE(UNIQUE(data),'》')&'》'
购买的每本书信息去重需要多次使用,所以我们给一个变量ut来替代,提取书名使用TEXTBEORE,那么提取单价就可以使用TEXTAFTER,把其中的元替换掉即可!
数量的统计,主要逐个筛选并使用ROWS函数统计行数即可!有了书名、数量和单价,最后的结果只要把三列,左右拼接到一起即可!
365函数中,加入了数个内存数组处理函数和文本拆分函数,还有编程必备的循环函数,内容的堆叠等函数,基本具备了编程的需求!365的全部函数和部分2019版本新增的函数,27个最新函数全部更新完结,喜欢365函数的朋友可以加入E精精学习圈!