广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    VBA自定义NVLOOKUP函数一对多查找

    来源:网络收集  点击:  时间:2024-03-15
    【导读】:
    VBA自定义函数,实现一对多查找,简单易用,通用。工具/原料moreMicrosoft office方法/步骤1/7分步阅读

    打开Excel表格,鼠标右击工作表名称——查看代码

    2/7

    鼠标右键——插入——模块

    3/7

    双击模块,把以下代码粘贴到代码框中

    Function nvlookup(zhi As String, rng As Range, col As Integer, val As Integer)

    ----自定义函数表达式:nvlookup(查找对象,查找范围,列号,精确查找)。精确查找的值填写0或者其他任意数字即可

    Dim i As Long

    arr = rng.Value 设定数组arr为所选查找范围的值

    For i = 1 To UBound(arr) 循环行

    If arr(i, 1) = zhi Then 判断范围内的第一列是否等于查找值

    n = n + 1 用于下方使用

    If n = 1 Then 判断第一个出现

    mytxt = arr(i, col) 符合第一次出现时显示的结果形式

    Else

    mytxt = mytxt ; arr(i, col) 多个符合的结果,结果的显示方式用分号“;”间隔

    End If

    End If

    Next i

    If Len(mytxt) = 1 Then 判断前面过程中mytxt是否生成结果,如果生成则字符数大于等于1

    nvlookup = mytxt mytxt查询到结果,自定义函数返回结果为mytxt的值

    Else

    nvlookup = 查找不到 查询不到结果,自定义函数返回查找不到

    End If

    End Function

    4/7

    点击左上角的Excel图标,或者点击右上角的关闭按钮/最小化按钮,返回Excel操作界面

    5/7

    在Excel中使用输入自定义的函数=NVLOKUP,按要求完整填写公式。

    6/7

    显示结果

    7/7

    如果不继续使用该函数,请先把结果复制——鼠标右键,选择性粘贴——值,然后移除模块。

    注意事项

    微软office全部版本可以运行,WPS部分版本支持VBA才可以使用。

    选择查找范围列时,如果选择整列,会导致函数计算速度较慢,选择有效范围即可。

    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_354984.html

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号06-02 14:21:34  耗时:0.030