如何在Excel中通过函数找到最后一个匹配项目
今天被网友问到这样一个问题:
这个问题很多朋友都会想到用vlookup去解决。但事实是vlookup函数可能达不到目的。我们一般可以通过自定义函数来解决,这样的话,逻辑再复杂也可以处理。
下面我写了一个简单的函数,它就是循环,从后往前找,找到匹配的就不找了。这与vlookup函数的从前往后找的原理是相反的。
Function GetLastPriceValue(coderng As Range) As Variant
'这个函数是用来取得最近的一个单价的
'输入参数coderng指的是条件代码的单元格
'大致使用的方法就是:GetLastPriceValue(B16)这样即可
Dim v As Variant
v = coderng.Value
Do While coderng.Row > 1
Set coderng = coderng.Offset(-1)
If coderng.Value = v Then
GetLastPriceValue = coderng.Offset(, 5).Value
GoTo Exit_Func
End If
Loop
Exit_Func:
End Function
另外,这位朋友也问到,如何在函数中删除某行数据?
关于通过公式删除数据,不少朋友都有这样的想法,但是:不可以。(你确实可以写删除的语句,但不会有效果的)