那怎么辦?作為Excel精英平臺的粉絲,蘭色不會讓你失望的。這不,蘭色編寫了一個比Xlookup更強大的查找函數(shù),它就是 Mlookup的升級版: Wlookup函數(shù) 一、用法介紹 = Wlookup(查找內容,查找值范圍,返回值范圍,查找模式) 語法說明:
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(A11&B11,A2:A7&B2:B7,D2:D7) 注:多條件查找只需要用&連接即可。 5、查找第N個符合條件的值 =Wlookup(A11,B2:B7,C2:C7, N) 如查找第2個 =Wlookup(A11,B2:B7,C2:C7, 2) 注:最后一個參數(shù)是正整數(shù)時,查找返回對應第N個符合條件的值。如果是多列查找第N個,也只需用&連接即可,同4。 6、查找最后一個 =Wlookup(A11,B2:B7,C2:C7,0) 注:第4個參數(shù)為0時,查找最后一個 7、一對多查找 Wlookup可以同時返回所有符合條件的結果,并用逗號連接。 =Wlookup(A11,B2:B7,C2:C7,-1) 注:第4個參數(shù)為-1時,為一對多查找 8、區(qū)間查找 =Wlookup(A11,A2:A7,B2:B7,-2) 注:當?shù)?個參數(shù)為-2時,可以實現(xiàn)區(qū)間匹配查找。 9、擴展應用:篩選功能 =IFERROR(Wlookup($A$11,$B$2:$B$7,A$2:A$7,ROW(A1)),'') 注:因為Wlookup可以返回第N個值,所以這里用row函數(shù)就可以逐個返回所有值。 篩選演示: 三、使用方法 Wlookup要想在你的表格中也能使用,需要按下面的步驟操作。 1、按alt+F11(或任一工作表標簽右鍵 - 查看代碼)會打開VBE窗口,在窗口中點插入 - 模塊。把下面的代碼復制粘貼到右側的空白區(qū)域中。 代碼(本文最后附下載地址) Function Wlookup(V, vY, vh, Optional m) Dim arr, arr1, arr2() Dim k As Integer arr = vY arr1 = vh If UBound(arr1) = 1 Then arr1 = Application.Transpose(arr1) arr = Application.Transpose(arr) End If ReDim arr2(1 To 1) For x = 1 To UBound(arr1) If arr(x, 1) = V Then Wlookup = arr1(x, 1) If IsMissing(m) Then Exit Function Else k = k + 1 ReDim Preserve arr2(1 To k) arr2(k) = arr1(x, 1) End If End If Next x If m = 0 Then Wlookup = arr2(k) ElseIf m = -1 Then Wlookup = Join(arr2, ',') ElseIf m = -2 Then Wlookup = JS(V, vY, vh) Else Wlookup = arr2(m) End If End Function Function JS(J1, R1, R2) '取接近值 Dim Jarr1, Jarr2 Dim x Jarr1 = R1 Jarr2 = R2 For x = 1 To UBound(Jarr1) If x + 1 > UBound(Jarr1) Then JS = Jarr2(x, 1) Exit Function ElseIf J1 >= Jarr1(x, 1) And J1 < Jarr1(x + 1, 1) Then JS = Jarr2(x, 1) Exit Function End If Next x End Function 2、當前文件另存為“啟用宏的工作簿”格式 以后這個工作簿中就可以正常使用Wlookup函數(shù)了 本文示例附件下載地址:(百度網盤,復制到電腦瀏覽器地址欄中回車打開) 鏈接:https://pan.baidu.com/s/1wsbtd2LGoDTUA5j9mOE9cg 提取碼: quju 注:下載打開后如遇到安全提示,點啟用即可,無風險。 蘭色說:3年前蘭色編寫了Mlookup函數(shù),今天蘭色綜合Mlookup和Xlookup的優(yōu)點,升級成了Wlookup函數(shù),可以說功能上比前2個函數(shù)都要強大。另外由于剛編寫完,可能會有不完善的地方,如果發(fā)現(xiàn)可以告訴蘭色及時修正。 |
|