|
|
本帖最后由 流云逸 于 2022-5-30 11:41 编辑
我这里提供一种解决方案。
基本假设:你的lookup value(B列)都是汉字。
基本思路:将lookup array(F列)中的元素,转变成只含汉字,这里用一个辅助列(H列)来存放转换后的值。
;用lookup value(B列)去查询 lookup array返回相应的return array中的value。
具体实现:
一、将字符串转变成字符数组。
MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1)
二、字符数组中的非汉字字符设置为空字符。
IF((UNICODE(MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1))>=19968)*(UNICODE(MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1))<=40865),MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1),"")
三、将字符数组连接成字符串。
CONCAT(IF((UNICODE(MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1))>=19968)*(UNICODE(MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1))<=40865),MID(F2,ROW(INDIRECT("1"&":"&LEN(F2))),1),""))
四、查询。
XLOOKUP(B2,H2:H6,G2:G6,"没找到")
结果见附件
|
|