'MLOOKUP(查找值,查找区域(第一列为条件区域),查找第几列,第几个匹配)
Function mlookup(a As String, b As Range, c As Long, d As Long) As String
Dim arr()
arr = b
Dim i As Long
Dim dic As Object
Set dic = CreateObject("scripting.dictionary")
For i = 1 To UBound(arr)
If arr(i, 1) = a Then
dic.Add i, arr(i, c)
End If
Next i
Erase arr()
Dim vl(), va As String
vl = dic.items
Set dic = Nothing
If UBound(vl) = -1 Then
mlookup = "None"
Else
mlookup = vl(d - 1)
Erase vl
End If
End Function
Access软件网交流QQ群(群号:198465573) |