将指定列中是另一列子串的格值插入第 3 列

例题描述和简单分析

有 Excel 文件 Book1.xlsx,数据如下所示:


A B
1 123 555
2 555 66
3 S666E 666
4 77E 123
5 444 6

循环 A 列的每个字符串, 如果 B 列能找到被该字符串包含的字符串(可能存在多个),则在 C 列的对应行返回 B 列找出的 N 个字符串的最后一个,结果如下:


A B C
1 123 555 123
2 555 66 555
3 S666E 666 6
4 77E 123
5 444 6

解法及简要说明

Excel中加载插件 ExcelRaq.xll 后。

在 C1 格输入公式:=esproc("=?1.select@z1(pos(?2,~))",$B$1:$B$5,A1),再将 C1 下拉拖拽至 C5 即可实现需求。

问答搜集

https://stackoverflow.com/questions/63651616/looping-through-range-in-worksheet-and-updating-another-range