现在的位置: 首页 > 综合 > 正文

如何在Excel中通过函数找到最后一个匹配项目

2013年12月05日 ⁄ 综合 ⁄ 共 926字 ⁄ 字号 评论关闭
文章目录
该篇文章是我于2009年6月10日通过自己编写的工具,批量从位于在博客园的博客站点(http://chenxizhang.cnblogs.com)同步而来。文章中的图片地址仍然是链接到博客园的。特此说明!

陈希章

原文地址:http://www.cnblogs.com/chenxizhang/archive/2009/05/28/1491478.html
原文标题:如何在Excel中通过函数找到最后一个匹配项目
原文发表:2009/5/28 13:55:00

今天被网友问到这样一个问题:

image

 

这个问题很多朋友都会想到用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

 

另外,这位朋友也问到,如何在函数中删除某行数据?

关于通过公式删除数据,不少朋友都有这样的想法,但是:不可以。(你确实可以写删除的语句,但不会有效果的)

作者:陈希章
出处:http://blog.csdn.net/chen_xizhang
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

抱歉!评论已关闭.