Excel数据查询,相信大家首先会想到vlookup函数。毋庸置疑vlookup函数在Excel数据查询中作用是非常的强大。但是它也有一些不能实现的数据查询。

如上图所示,我们需要根据人员的出现次数,提取第N次的数据。这里vlookup函数就无法使用,但是我们使用Zlookup函数就可以轻松完成。下面我们就来学习的学习一下zlookup函数如何快速解决我们的查询问题。

案例一:Zlookup查询函数查询人员第2次销售数据

案例说明:如上图,我们需要提取张三、李四在所有销售数据中的第二次销售数据。这种操作我们用vlookup函数就无法解决。

函数公式:

=zlookup(G5,$D$2:$E$12,2,2)

函数解析:

1、zlookup函数与vlookup函数类似,总共是4个参数,都是通过查询条件值在对应数据区域中进行数据查询;

2、第一参数G5代表我们需要查询的条件值;第二参数D2:E12代表数据查询区域;第三参数2代表销售额在姓名右起第2列;第四参数2代表从上往下查询第二个值。

案例二:zlookup函数查询人员最后一天的销售数据

案例说明:如上图所示,我们需要提取对应人员的最后一天的销售数据,vlookup查询最后一条数据同样是无法操作。

函数公式:

=zlookup(G5,$D$2:$E$12,2,0)

函数解析:

1、zlookup函数查询最后一条数据的时候,函数的前面三个参数的使用方法跟案例一是一样的,我们只需要修改第四参数的值调整为0即可。

案例三:zlookup函数轻松完成数据的一对多查询操作

案例说明:我们在对数据进行一对多查询的时候,vlookup函数我们需要结合countif条件计算及row函数嵌套才能操作,但是使用zlookup函数我们可以实现最简单从一对多查询。

函数公式:

=zlookup(G5,$D$2:$E$12,2,-1)

函数解析:

1、zlookup函数进行数据一对多查询的时候,我们同样只需要修改函数的第四参数即可实现。将第四参数修改为0,这样就能查询出对应的所有值,每个值中间会通过逗号连接。

通过上面的案例讲解,现在你学会如何利用自定义的zlookup函数进行数据查找了吗?当然在使用这个函数的时候,我们需要首先在代码编辑窗口进行函数的自定义。操作步骤如下:

第一步:按Alt+F11或者右键点击工作表名称,选择查看代码进入代码编辑窗口。然后在左边工程窗口中,右键点击Thisworkbook点击插入模块;如下图所示:

第二步:在模块窗口界面,我们将下方的代码粘贴进去,这样我们就通过function函数自定义了一个zlookup查询函数。如下图所示:

自定义zlookup函数代码如下:

Function zlookup(rg, rgs As Range, L As Integer, M As Integer)Dim arr1, ARR2, 列数Dim R, n, K, X, cc, sr As Stringarr1 = rg.ValueARR2 = rgsIf VBA.IsArray(arr1) ThenFor Each R In arr1If R <> "" Thencc = cc & R列数 = 列数 + 1End IfNext RElsecc = arr1End IfIf M > 0 Then '非查找最后一个For X = 1 To UBound(ARR2)sr = ""If 列数 > 1 ThenFor q = 1 To 列数sr = sr & ARR2(X, q)Next qElsesr = ARR2(X, 1)End IfIf sr = cc ThenK = K + 1If K = M Thenzlookup = ARR2(X, L)Exit FunctionEnd IfEnd IfNext XElseIf M = -1 Then '查找所有值For X = 1 To UBound(ARR2)sr = ""If 列数 > 1 ThenFor q = 1 To 列数sr = sr & ARR2(X, q)Next qElsesr = ARR2(X, 1)End IfIf sr = cc Thenzlookup = zlookup &

自定义条件查询_数据查询不止有vlookup函数,自定义zlookup函数查询操作更高效...相关推荐

  1. B站黑马测试第二篇P206视频数据库SQL语句‘关联查询_数据准备‘代码

    drop table if exists category; create table category( id int unsigned primary key auto_increment, ty ...

  2. java数据查询_数据的查询

    -- 创建数据 CREATE DATABASE day2; -- 使用数据库 USE day2; -- 创建一个表格 CREATE TABLE stu( id INT, NAME VARCHAR(20 ...

  3. mybatis查询千万数据如何保证内存够用?mybatis流式查询

    目录 基本概念 MyBatis 流式查询接口 但构建 Cursor 的过程不简单 方案一:SqlSessionFactory 方案二:TransactionTemplate 方案三:@Transact ...

  4. hutool的定时任务不支持依赖注入怎么办_设计一个任务调度算法,时间轮算法,比优先队列更高效...

    当年我还是个学生的时候,有一次去参加欢聚时代的一个面试,有一道面试题记忆尤新,让你来实现一个定时任务,你会怎么做?为了简化问题,我们只用考虑内存方案,不用考虑数据持久化. 数组法 最简单的,我们可以把 ...

  5. 微服务跨数据库联合查询_微服务架构下,解决数据库跨库查询的一些思路

    加关注,不迷路! 前言 在服务做微服务改造后,原先单库join查询已经不能满足要求,每个拆分的微服务对应一个数据库实例,而且部署在不同的服务器上,那么解决"跨库查询"就势在必行了. ...

  6. mysql按照学生分组查询_将student表按照gender字段值进行分组查询,并计算每个分组中有多少名学生_学小易找答案...

    [简答题]查询student表中一共有多少条记录 [简答题]在department表和employee表之间分别使用where查询.自连接查询 [简答题]使用DESC查看学生表和班级表 [简答题]在表 ...

  7. 1为数据库查询的数据中加一排序号,2判断为查询出来的字段赋值

    @Overridepublic String getSqlByFileCodeForExport(String strTime, String strCompany) {StringBuffer st ...

  8. java销售额查询_用JSP+JavaBean开发模式实现一个销售额的查询

    数据库使用mysql,如下: vo包的Sales类: package com.vo; public class Sales { public String salestime; public floa ...

  9. java表格模糊查询_使用java图形报表时,如何进行模糊查询

    模糊查询是利用"_"表示单个字符和"%"表示任意个字符进行匹配的.一些常见的格式如下: Select * from 表名 where 列名 like '%'; ...

最新文章

  1. 计算机维修实训室制度,计算机实训室规章制度
  2. 赠书:亿级流量峰值没在怕,“缓存”技术来减压!
  3. python爬取b站粉丝数_【python爬虫】每天统计一遍up主粉丝数!
  4. 19、Java并发性和多线程-嵌套管程锁死
  5. 【GDAL】GDAL栅格数据结构学习笔记(一): 关于Metadata
  6. 一个震撼的交互型3D可视化R包 - 可直接转ggplot2图为3D
  7. Anaconda+django写出第一个web app(五)
  8. iOS设备是否越狱的判断代码
  9. 阿里云ECS实例邮件发送不了的解决办法
  10. tp5使用RabbitMQ的使用记录
  11. linux 用户登陆记录,Linux查看用户登陆历史记录
  12. java 实现ps功能_java 简单图片,可以实现ps的几个小滤镜
  13. C# 学习笔记04-15
  14. 解决 org.gjt.mm.mysql.Driver 报错问题(目前有效,看后续会不会出什么问题)
  15. 【Caffe】简单介绍
  16. HTTP协议和XMPP协议
  17. Word:在文中添加参考文献的引用并自动更新
  18. 1.1、SR(Segment Routing Over MPLS) 介绍
  19. CString与string转换
  20. 使用立体声混音(Stereo Mix)录制音频

热门文章

  1. Java 8发布了! — Lambdas教程
  2. Java EE CDI bean范围
  3. 使用Spring Redis发布/订阅
  4. 使用Spring Roo进行快速云开发–第1部分:Google App Engine(GAE)
  5. JSON用于多态Java对象序列化
  6. Log4j,Stat4j,SMTPAppender集成–汇总错误日志以发送太多电子邮件
  7. iTerm2 for MacOS(终端模拟器/终端仿真器/命令终端工具)设置详解
  8. python集合和字典的区别_Python中的字典和集合
  9. php云服务器买什么系统吗,php云服务器买什么系统
  10. 名词解释多媒体计算机,多媒体-名词解释及填空