大家好,我是孙斌。今天带来一道经典的多函数嵌套应用案例—— 实现物料编码隔三行打印标签。如下图所示,我们手上有一组原始物料编码数据,业务需求是在每一条数据中间批量添加 3 个空行,完成标签排版。
针对这个需求,我整理了两种实现方案:入门友好的排序法,以及运用 Vstack、Reduce、Offset 等函数组合的高阶公式法,下面逐一拆解讲解。
1、方法1:排序法
首先介绍一种简单的办法,给原数据旁边添加一列数字序号,再复制两组,总共3组。
然后对数据区域按照数字序号升序排列,得到结果。
2、reduce循环添加空行法
通过vstack+offset+reduce等函数嵌套一次性返回结果。
怎么理解呢?下面说说。
首先考虑第一条记录,用vstack函数拼接三个空字符串,注意空白之间用分号,表示按行分隔。
接着用iferror函数屏蔽错误值。
把第一条记录换成offset引用的形式,根据序号引用,方便后续的循环。
用reduce函数对所有序号进行循环,得到如下结果,也就是最后一条记录的结果。
用vstack函数拼接上中间结果,公式如下,得到最终的结果。
当然也可以把公式中的offset函数换成filter函数。