Xlookup、Vlookup请走开,万能的Wlookup函数来了!

article/2025/10/19 6:39:45

前天,为大家介绍了关于Vlookup接班人Xlookup函数的介绍,一方面惊叹于Xlookup强大的查找功能,另一方面也担心自已只能远观而不能使用。毕竟付费office365的用户占极少数。点击进入查看>>

那怎么办?下面为大家编写了一个比Xlookup更强大的查找函数,它就是Mlookup的升级版:

Wlookup函数

一、 用法介绍

= Wlookup(查找内容,查找值范围,返回值范围,查找模式)

语法说明:

    • 查找内容:查找的值

    • 查找值范围:在该区域/数组中查找

    • 返回值范围:根据在第2个参数中查找结果,返回该数组中对应位置的值

    • 查找模式:

          -2 是区间查找

          -1 是一对多查找

           0 查找最后一个

           N 查找第N个符合条件的值

二、 功能演示

1、 查找第1个符合条件的值

=Wlookup(A11,A2:A7,C2:C7)

Wlookup函数

2、 从右向左查找

=Wlookup(A11,B2:B7,A2:A7)

Wlookup函数

3、 按行上下查找

=Wlookup(B5,A1:D1,A2:D2)

Wlookup函数

4、 多条件查找

=Wlookup(A11&B11,A2:A7&B2:B7,D2:D7)

注:多条件查找只需要用&连接即可。

Wlookup函数

5、 查找第N个符合条件的值

=Wlookup(A11,B2:B7,C2:C7, N)

如查找第2个

=Wlookup(A11,B2:B7,C2:C7, 2)

注:最后一个参数是正整数时,查找返回对应第N个符合条件的值。如果是多列查找第N个,也只需用&连接即可,同4。

Wlookup函数

6、 查找最后一个

=Wlookup(A11,B2:B7,C2:C7,0)

注:第4个参数为0时,查找最后一个

Wlookup函数

7、 一对多查找

Wlookup可以同时返回所有符合条件的结果,并用逗号连接。

=Wlookup(A11,B2:B7,C2:C7,-1)

注:第4个参数为-1时,为一对多查找

Wlookup函数

8、 区间查找

=Wlookup(A11,A2:A7,B2:B7,-2)

注:当第4个参数为-2时,可以实现区间匹配查找。

Wlookup函数

9、 扩展应用:筛选功能

=IFERROR(Wlookup($A$11,$B$2:$B$7,A$2:A$7,ROW(A1)),"")

注:因为Wlookup可以返回第N个值,所以这里用row函数就可以逐个返回所有值。

Wlookup函数

筛选演示:

Wlookup函数

三、 使用方法

Wlookup要想在你的表格中也能使用,需要按下面的步骤操作。

1、 按alt+F11(或任一工作表标签右键 - 查看代码)会打开VBE窗口,在窗口中点插入 - 模块。把下面的代码复制粘贴到右侧的空白区域中。

Excel

代码(本文最后附下载地址)

Function Wlookup(V, vY, vh, Optional m)

 Dim arr, arr1, arr2()

 Dim k As Integer

 arr = vY

 arr1 = vh

       If UBound(arr1) = 1 Then

       arr1 = Application.Transpose(arr1)

       arr = Application.Transpose(arr)

       End If

ReDim arr2(1 To 1)

 For x = 1 To UBound(arr1)

    If arr(x, 1) = V Then

       Wlookup = arr1(x, 1)

       If IsMissing(m) Then

         Exit Function

       Else

        k = k + 1

        ReDim Preserve arr2(1 To k)

        arr2(k) = arr1(x, 1)

       End If

    End If

  Next x

  If m = 0 Then

    Wlookup = arr2(k)

  ElseIf m = -1 Then

   Wlookup = Join(arr2, ",")

  ElseIf m = -2 Then

   Wlookup = JS(V, vY, vh)

  Else

    Wlookup = arr2(m)

  End If

End Function

 

Function JS(J1, R1, R2) '取接近值

Dim Jarr1, Jarr2

Dim x

 Jarr1 = R1

 Jarr2 = R2

 

For x = 1 To UBound(Jarr1)

  If x + 1 > UBound(Jarr1) Then

       JS = Jarr2(x, 1)

       Exit Function

  ElseIf J1 >= Jarr1(x, 1) And J1 < Jarr1(x + 1, 1) Then

       JS = Jarr2(x, 1)

       Exit Function

  End If

Next x

End Function

2、 当前文件另存为“启用宏的工作簿”格式

Excel

以后这个工作簿中就可以正常使用Wlookup函数了

综合Mlookup和Xlookup的优点,升级成了Wlookup函数,可以说功能上比前2个函数都要强大。

本文示例附件下载地址:(百度网盘,复制到电脑浏览器地址栏中回车打开)

链接:https://pan.baidu.com/s/1wsbtd2LGoDTUA5j9mOE9cg 提取码: quju 


http://chatgpt.dhexx.cn/article/LVyKNm5F.shtml

相关文章

EXCEL基础:XLOOKUP函数的简单使用

实验表格如下&#xff0c;这是一个简单的NBA球星信息的表格&#xff1a; 最简单的使用方法&#xff1a; 1、【简单使用1】需求&#xff1a;通过【杜兰特】姓名&#xff0c;知道其所在的【球队】。 在【I3】单元格输入【XLOOKUP(H3,D2:D8,B2:B8)】&#xff0c;其中H3表示的是要…

ACCESS中Dlookup函数使用

ACCESS中Dlookup函数使用 ACCESS中Dlookup函数使用 Dlookup函数&#xff0c;利用条件从表中筛选查找需要的单项数据&#xff0c;类似EXCEL中的Vlookup函数&#xff0c;用法简单快捷&#xff0c;相对SQL语句要简单。 函数用法 Dlookup(字段名&#xff0c;表或查询名字&#…

详解-脏读、幻读与不可重复读

最近在读 《MySQL 技术内幕 InnoDB 存储引擎》&#xff0c;里面提到的各种概念都很新鲜&#xff0c;以前听说过脏读、幻读、不可重复读&#xff0c;但是对于概念不甚了解&#xff0c;于是查了一下&#xff0c;这里做个笔记。 数据库事务特征 数据库事务特征&#xff0c;即 ACID…

17@MySQL数据库读现象详解(脏读、幻读、不可重复读)

文章目录 MySQL数据库读现象一、数据库的读现象1、脏读&#xff08;dirty read&#xff09;&#xff1a;读取未提交数据【案列详解】2、不可重复读取 (nonrepeatable read)&#xff1a;前后多次读取&#xff0c;数据内容不一致【案列详解】3、幻读(nonrepeatable read)&#xf…

简单解释不可重复读和幻读

之前看了一篇关于数据库隔离级别的文章觉得挺好。http://singo107.iteye.com/blog/1175084 不过很多人对“不可重复读”和“幻读“这两者的区别搞不清楚&#xff0c;包括我自己曾也是迷糊了很久一段时间。 但是&#xff0c;必须说明的是“不可重复读”关注的重点其实在于更新…

可重复读隔离级别如何解决脏读、不可重复读

我们都知道可重复读隔离级别可以解决脏读、不可重复读。那么具体是如何解决的呢&#xff1f; 下面先通过实验来演示可重复读能够解决脏读、不可重复读问题&#xff0c;然后解释具体的原因。 环境搭建 1. 建立两个session连接MySQL,session1和session2 关闭session1和session…

简单聊聊mysql的脏读、不可重复读、幻读

最近&#xff0c;在一次 mysql 死锁的生产事故中&#xff0c;我发现&#xff0c;关于 mysql 的锁、事务等等&#xff0c;我所知道的东西太碎了&#xff0c;所以&#xff0c;我试着用几个例子将它们串起来。具体做法就是通过不断地问问题、回答问题&#xff0c;再加上“适当”的…

MySQL MVCC多版本并发控制(脏读和不可重复读解决原理)

文章目录 一、MVCC概念二、MVCC应用于已提交读隔离级别1. 解决脏读2. 无法解决不可重复读3. 无法解决幻读 三、MVCC应用于可重复读隔离级别1. 解决脏读2. 解决不可重复读3. 理解 可重复读隔离级别&#xff0c;只生成一次数据快照4. 理解 可重复读隔离级别&#xff0c;只能部分解…

mysql防止不可重复读_mysql怎么解决不可重复读

mysql解决不可重复读的方法&#xff1a;采用了mvcc多版本并发控制&#xff0c;mvcc是利用在每条数据后面加了隐藏的两列&#xff0c;即创建版本号和删除版本号&#xff0c;每个事务在开始的时候都会有一个递增的版本号。 【相关学习推荐&#xff1a; mysql解决不可重复读的方法…

MySQL事务之不可重复读问题

版权声明&#xff1a;本文为 小异常 原创文章&#xff0c;非商用自由转载-保持署名-注明出处&#xff0c;谢谢&#xff01; 本文网址&#xff1a;https://blog.csdn.net/sun8112133/article/details/89739475 文章目录 一、不可重复读概述1、事例2、分析 二、演示不可重复读1、…

数据库脏读、幻读、不可重复读与四种隔离级别的理解

前言 本章着重点是介绍&#xff1a;出现脏读、幻读、不可重复读的原因&#xff0c;以及设定四种隔离级别如何解决这些现象&#xff0c;结合图例让读者阅读得更加通透 一、什么是事务&#xff1f; 所谓事务是用户定义的一个数据库序列&#xff0c;这些操作要么全做&#xff0…

不可重复读和幻读 重

如有侵权请联系本人删除 首先了解acid与mysql MySQL事务之ACID实现原理&#xff08;全方位解读&#xff09; 深入学习MySQL事务&#xff1a;ACID特性的实现原理 二者很相似&#xff0c;不可重复读指的是对同一条记录&#xff08;可以理解为对同一行&#xff09;前后两次的读取…

灰色关联法 —— matlab

目录 1.简介 2.算法详解 2.1 数据标准化 2.2 计算灰色相关系数 2.3 计算灰色关联度系数 3.实例分析 3.1 读取数据 3.2 数据标准化 3.3 绘制 x1,x4,x5,x6,x7 的折线图 3.4 计算灰色相关系数 完整代码 1.简介 对于两个系统之间的因素&#xff0c;其随时间或不同对象而…

如何利用python实现灰色关联分析?

1.灰色关联分析简介 灰色系统这个概念是相对于白色系统和黑色系统而言的。从控制论的知识里&#xff0c;颜色一般代表对于一个系统我们已知信息的多少&#xff0c;白色代表信息量充足&#xff0c;黑色代表我们其中的构造并不清楚的系统&#xff0c;而灰色介于两者之间&#xf…

灰色关联分析法详解及python实践

1. 关于灰色关联分析 1.1. 什么是灰色关联分析 灰色关联分析是指对一个系统发展变化态势的定量描述和比较的方法&#xff0c;其基本思想是通过确定参考数据列和若干个比较数据列的几何形状相似程度来判断其联系是否紧密&#xff0c;它反映了曲线间的关联程度。 在系统发展过…

python灰色关联度分析_灰色关联分析法 python

广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 本文2290字,预计阅读需10分钟; 关联分析(association analysis)主要用于发现隐藏在大型数据集中的有意义的联系,它起源于商品销售领域,“啤酒与尿布”的故…

灰色关联分析应用

参考学习b站&#xff1a;数学建模学习交流 感觉这篇博客写的很好&#xff1a;灰色关联分析Matlab代码实现 看完后自己尝试运行的一下&#xff0c;发现和自己本地的matlab代码运行结果不同&#xff0c;就把其中细节写到这篇博客里了 运行上述博客应用2的代码&#xff0c;将更…

灰色关联案例与代码

案例 求他们之间的关联度&#xff0c;并且大小排序。 代码 写了注释&#xff0c;自行查看,换了案例&#xff0c;你只需要修改这一部分即可&#xff1a; 因为读取不一样了嘛&#xff0c;你总要改改数字。 clc; close; clear all; xxlsread(gray_data1.xlsx); xx(:,2:end);%所…

灰色关联法 —— python

目录 1.简介 2.算法详解 2.1 数据标准化 2.2 计算灰色相关系数 2.3 计算灰色关联度系数 3.实例分析 3.1 读取数据 3.2 数据标准化 3.3 绘制 x1,x4,x5,x6,x7 的折线图 3.4 计算灰色相关系数 完整代码 1.简介 对于两个系统之间的因素&#xff0c;其随时间或不同对象而变…

数学建模之灰色关联分析(GRA)

本文参考的是司守奎&#xff0c;孙兆亮主编的数学建模算法与应用&#xff08;第二版&#xff09; 灰色关联分析不仅能够用做关联分析&#xff0c;也能够用于评价。 其具体分析步骤如下&#xff1a; 第一步&#xff0c;需要确定评价对象和参考数列。 评价对象一般指的就是待分…