那怎么办?作为Excel精英平台的粉丝,兰色不会让你失望的。这不,兰色编写了一个比Xlookup更强大的查找函数,它就是Mlookup的升级版: Wlookup函数 一、用法介绍 Wlookup(查找内容,查找值范围,返回值范围,查找模式) 语法说明: 查找内容:查找的值 查找值范围:在该区域数组中查找 返回值范围:根据在第2个参数中查找结果,返回该数组中对应位置的值 查找模式: 2是区间查找 1是一对多查找 0查找最后一个 N查找第N个符合条件的值 二、功能演示 1、查找第1个符合条件的值 Wlookup(A11,A2:A7,C2:C7) 2、从右向左查找 Wlookup(A11,B2:B7,A2:A7) 3、按行上下查找 Wlookup(B5,A1:D1,A2:D2) 4、多条件查找 Wlookup(A11B11,A2:A7B2:B7,D2:D7) 注:多条件查找只需要用连接即可。 5、查找第N个符合条件的值 Wlookup(A11,B2:B7,C2:C7,N) 如查找第2个 Wlookup(A11,B2:B7,C2:C7,2) 注:最后一个参数是正整数时,查找返回对应第N个符合条件的值。如果是多列查找第N个,也只需用连接即可,同4。 6、查找最后一个 Wlookup(A11,B2:B7,C2:C7,0) 注:第4个参数为0时,查找最后一个 7、一对多查找 Wlookup可以同时返回所有符合条件的结果,并用逗号连接。 Wlookup(A11,B2:B7,C2:C7,1) 注:第4个参数为1时,为一对多查找 8、区间查找 Wlookup(A11,A2:A7,B2:B7,2) 注:当第4个参数为2时,可以实现区间匹配查找。 9、扩展应用:筛选功能 IFERROR(Wlookup(A11,B2:B7,A2:A7,ROW(A1)),) 注:因为Wlookup可以返回第N个值,所以这里用row函数就可以逐个返回所有值。 筛选演示: 三、使用方法 Wlookup要想在你的表格中也能使用,需要按下面的步骤操作。 1、按altF11(或任一工作表标签右键查看代码)会打开VBE窗口,在窗口中点插入模块。把下面的代码复制粘贴到右侧的空白区域中。 代码(本文最后附下载地址) FunctionWlookup(V,vY,vh,Optionalm) Dimarr,arr1,arr2() DimkAsInteger arrvY arr1vh IfUBound(arr1)1Then arr1Application。Transpose(arr1) arrApplication。Transpose(arr) EndIf ReDimarr2(1To1) Forx1ToUBound(arr1) Ifarr(x,1)VThen Wlookuparr1(x,1) IfIsMissing(m)Then ExitFunction Else kk1 ReDimPreservearr2(1Tok) arr2(k)arr1(x,1) EndIf EndIf Nextx Ifm0Then Wlookuparr2(k) ElseIfm1Then WlookupJoin(arr2,,) ElseIfm2Then WlookupJS(V,vY,vh) Else Wlookuparr2(m) EndIf EndFunction FunctionJS(J1,R1,R2)取接近值 DimJarr1,Jarr2 Dimx Jarr1R1 Jarr2R2 Forx1ToUBound(Jarr1) Ifx1UBound(Jarr1)Then JSJarr2(x,1) ExitFunction ElseIfJ1Jarr1(x,1)AndJ1Jarr1(x1,1)Then JSJarr2(x,1) ExitFunction EndIf Nextx EndFunction 2、当前文件另存为“启用宏的工作簿”格式 以后这个工作簿中就可以正常使用Wlookup函数了 本文示例附件下载地址:(百度网盘,复制到电脑浏览器地址栏中回车打开) 链接:https:pan。baidu。coms1wsbtd2LGoDTUA5j9mOE9cg提取码: 注:下载打开后如遇到安全提示,点启用即可,无风险。 兰色说:3年前兰色编写了Mlookup函数,今天兰色综合Mlookup和Xlookup的优点,升级成了Wlookup函数,可以说功能上比前2个函数都要强大。另外由于刚编写完,可能会有不完善的地方,如果发现可以告诉兰色及时修正。