首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自定义的近似匹配函数ZLOOKUP,让你的查找更智能,效率更高

在日常我们表格匹配,都是一些VLOOKUP,XLOOKUP等,对于一些近似的条目,很难处理,今儿发现一个函数,相同有效,也能大提高我们的效能,效率,公式自定义匹配函数ZLOOKUP,它通过字符相似度实现模糊查找,而且可以设置近似度。以下是该公式的详细解读和应用方法:

一、公式功能解析         

=LAMBDA(值,查找区域,返回值区域,相似率,TAKE(SORTBY(返回值区域,LET(y,MAP(查找区域,LAMBDA(x,COUNT(FIND(MID(x,SEQUENCE(LEN(x)),1),值))/LEN(x))),IF(MAX(y)<相似率,NA(),y)),-1),1))

  1.字符拆分与匹配

MID(x,SEQUENCE(LEN(x)),1):将查找区域的每个单元格内容拆分为单个字符

FIND(MID(...),值):检查每个字符是否存在于目标值中,返回匹配结果

COUNT(...)/LEN(x):计算字符匹配比例(即相似度)

2.动态筛选与排序

MAP函数遍历查找区域,生成相似度数组

SORTBY按相似度降序排列返回值区域

TAKE提取相似度最高的结果

3.相似率控制

IF(MAX(y)<相似率,NA()):当最高相似度低于设定阈值时返回错误值,避免低质量匹配

二、参数说明

三、使用步骤

定义自定义函数

点击【公式】【名称管理器】【新建】

名称输入ZLOOKUP,引用位置粘贴该公式

2、调用函数示例

=ZLOOKUP(A2, D:D, E:E, 0.7)

表示在D列查找与A2相似度≥70%的记录,返回对应E列的值

3、处理特殊场景

全称查简称:=ZLOOKUP("北京科技有限公司", D列, E列, 0.5)

带错别字查找:=ZLOOKUP("沃而玛超市", D列, E列, 0.6)

四、应用场景案例

1.公司名称模糊匹配

=ZLOOKUP("腾讯科技", A2:A100, B2:B100, 0.75)

可匹配"A公司(深圳腾讯科技)"、"腾讯科技深圳分公司"等变体

2.地址标准化处理

=ZLOOKUP("北京市海淀区中关村大街1号", C2:C500, D2:D500, 0.8)

自动识别"海淀区中关村大街1号"、"北京海淀中关村1号"等格式差异

五、注意事项

1.版本要求

需WPS 2023或Office 365版本(支持LAMBDA/MAP等新函数)

2.性能优化

避免在10万行以上数据直接使用(可先筛选缩小范围)

对数值型数据建议先用CLEAN和TRIM清洗

  3、相似率建议

  该函数相比传统VLOOKUP的优势在于能处理字符顺序错乱、部分缺失的复杂场景,但需注意合理设置相似率阈值。 

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OnHFxCgvfEhgb85PxwGPOSKg0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券