使用场景介绍:
基础数据表Sheet1:
代查找匹配的表Sheet2:
【说明】代查找工作表中的规格,只是基础工作表中规格的一部分,是完全被包含的关系,只要是完全被包含,就匹配其代号,填写入代号一列
创建了自定义函数MyLookUp
Sheet2表中B2单元格写入以入自定义的函数公式:
=MyLookUp(A2,Sheet1!A:B,2),即得到想要的结果,如图:
自定义函数MyLookUP的代码如下:
Public Function MyLookUP(FindValue As Range, SourceRange As Range, Col As Integer) As Variant Dim Rng As Range, returnRng As Range '以下是对查找区域进行了一个范围的压缩,精细到只在有效数据区域进行查找匹配。 '因为有很多使用者会习惯选取整个列来作为数据区域(包括工作表UsedRange之外的区域),这会造成无意义的循环遍历 Set SourceRange = Application.Intersect(SourceRange.Parent.UsedRange, SourceRange) For Each Rng In SourceRange.Columns(1).Cells If InStr(1, Rng.Value, FindValue.Value, vbTextCompare) > 0 Then Set returnRng = Rng.Offset(0, Col - 1) Exit For End If Next MyLookUP = returnRng.Value End Functiont标签:匹配,自定义,VlookUp,Rng,SourceRange,Range,查找 From: https://www.cnblogs.com/bohua320/p/16940677.html