Excel之PowerQuery A类满足条件时填充B列±n行的值
网友提问:

放大图片

回答网友问题
1、导入数据

2、添加从0开始的索引列(用鼠标就可以操作,在PowerQuery基础篇就讲了)

3、写代码完成
代码解读:
List1是算出A列中"AAA"所在的下标位置,本案例中他在8和16
网友需要在"AAA"中出的±5行填写填充指定字符
以8为列,8-5 至 8+5 这个范围填充,以此类推
tb是对"已添索引"这张表添加列,遍历List1得到{8,16}的每一个值,然后代入其中
第一次: 如果 【索引】>8-5 and 【索引】<8+5 就返回"哦" 否则返回null
第二次: 如果 【索引】>16-5 and 【索引】<16+5 就返回"哦" 否则返回null
........................
之后每一行会得到一个列表,可能是 {null} 可能是 {null,"哦"} 也可能是{"哦","哦"} 还可能是 {null,null}等等,我们先对每张列表去重,去重后如果列表元素不等于1,就删除列表中的null取列表的{0}号下标,否则(就是列表元素只有一个)直接取列表{0}号下标
返回结果:

最后把索引列删除就可以了。如果我上面这么详细的解读了,还是看不懂,那应该是没有系统的看过107集的课件。

PowerQuery教程:https://www.bilibili.com/video/BV1oa4y1j75e