VBA实现vlookup函数逆向查找
来源:网络收集 点击: 时间:2024-08-07【导读】:
Excel中自带的VLOOKUP函数无法实现逆向查找,需要MATCH和INDEX配合,并且如果没有查询到值,会返回错误,使用时还需嵌套IFEROOR函数。而这个函数使用比较频繁,本经验基于VBA自定义强大的函数功能,实现远胜于普通函数的效果,简单实用。工具/原料moreExcelVBA功能方法/步骤1/6分步阅读
3/6
4/6
5/6
6/6
注意事项
打开一份Excel文件,如莫浅北的函数库.xlsx,也可以新建工作表。
2/6按ALT + F11进入vba编辑界面。
新建模块:在打开的窗口,插入菜单选择模块。

录入如下代码:
Function FINDD(STR As String, Ran As Range, i As Integer)
函数名称可以使用你习惯的方式命名,注意同时修改此代码所有的FINDD
使用vba的find函数,实现工作表的match、index功能
Dim rng As Range
Set rng = Ran.Find(STR)
If Not rng Is Nothing Then
FINDD = rng.Offset(0, i) 右侧为正,左侧为负
End If
End Function

在工作表中使用公式=FINDD(查找字符,该字符所在列区域,向右偏移N列)
如果是向左查询,最后一个参数使用负数即可。

另存为xlam启动加载项格式文件,比如莫浅北的函数库.xlam。

在开发工具选项卡-Excel加载项中勾选刚才的莫浅北的函数库,这样,电脑中的Excel程序本身就可以使用自定义的公式了。

自定义公式没有每个参数的提示,需要自己记住
函数名称可自定义,但需要与返回值保持一致
如果为查询到值,会返回数字0,不会返回错误
EXCELVBA自定义函数逆向查询版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_1081057.html
上一篇:邮政快递怎么查询?
下一篇:苹果id怎么注册新的id