如何把字符串按逗号分开后再查找对应值

现有Excel 数据,如下所示:

id

value

*

ids

values

S2

ABCDE

*

S2,S6,S7,S4,S3


S3

AB

*

G2,S4


S6

ADE

*

G9,S6,G2,S3


S7

!TE

*

G2,G9


G2

D

*

G2


G9

GPES

*

S2,G9


&ALL

ALL

*

&ALL


id、value 两列为字典表,现需要计算 ids(多个 id)对应的 values(多个 value),最终计算结果如下所示:

实现步骤:

1.      运行集算器(可以到润乾官网下载,用职场版,首次运行时会提示加载授权,下载个免费的就够了)

2.      打开 Excel,加载插件(Excel 的 Option 的 add-ins 对话框,下面有个 Go…按钮)ExcelRaq.xll,需要到 [esProc 的安装目录 \bin] 下找到这个插件文件。不太熟悉的读者可以再参考 Excel 的资料以了解具体加载方法。

3.     在集算器中编写脚本 book2.dfx:


A

1

=arg2.split@c()

2

=A1.(arg1.select@1(~(1)==A1.~)(2)).concat@c()

A1   将字符串参数 arg2 通过逗号拆成序列。参数 arg2 为从 Excel 传入的第二个参数,是 Excel 中 D2 至 D8 格对应的字符串,集算器中定义参数的方法如下(菜单:Program->Parameter):