大家好,今天我给大家分享一些与数据查询相关的内容。首先我们看一下数据来源。
左侧是员工信息表,右侧是搜索区域,如果想在G4中输入任意姓名或部门,则可以在右侧提取所有符合条件的记录。
要实现这个数据提取的效果,其实也很简单,接下来我们看看具体的步骤。
1级
在单元格G4中输入要查询的内容,例如“销售部门”。
第2步
在第一行数据(本例中为单元格A4)左侧输入以下公式并将其向下拖动。
=C4=G$4+B4=G$4+A3
公式是什么意思?
如果单元格C4中的部门与G4中要查询的部门相同,或者单元格B4中的名称与单元格G4中要查询的名称相同,则在上一个单元格中加1。否则它仍然是旧单元格。网格的内容。
如果你观察下拉公式的效果,你会发现,如果C列中的部门名称与单元格G4中的部门名称相同,那么结果正是一系列递增的序列号1.2.三.
这个序列号有什么用?别着急,往下看吧。
步骤3
在I4单元格中输入公式,复制到右下角即可得到查询结果。
=IFERRORVLOOKUPROWA1,$A:$E,COLUMNB1,0,34;
这个公式是什么意思?
这里的主角是VLOOKUP函数。查询的内容为ROWA1。ROW的函数返回参数所在的行号。我在这里得到的结果是行号A1——1。如果将公式向下复制,则变为ROWA2、ROWA3.结果从1开始,按序号1、2、3.递增
即VLOOKUP函数的查找内容每行都不一样,在第4行,查找内容为1,当公式到第5行时,查询内容为2。
我们看一下VLOOKUP函数查询的区域。$A:$E,这种写法表示A列到E列的整个列范围,并使用绝对引用。
说到这里,有的朋友已经知道通过公式得到的序列号是用来做什么的了,没错,就是用来支持VLOOKUP查询的。
前序号的特点是每次出现符合条件的记录时序号就加1,而VLOOKUP中要查询的内容是序号1、2、3……
我们看一下COLUMNB1是做什么用的。她的函数和ROW函数类似,返回参数COLUMNB1的列号,返回B1的列号2。如果将公式复制到右侧,则变为COLUMNC1、COLUMND1.结果按顺序从2开始,然后是2、3、4.
然后将获得的序列号用作VLOOKUP函数的第三个参数,以指定从查询区域返回哪些列。
如果I列有公式,则返回查询区第二列的内容,如果将公式复制到J列右侧,则返回查询区第三列的内容,以此类推。
你的朋友可能会说A列重复的序列号太多了。没关系,因为VLOOKUP函数有一个特点,如果有多个记录满足条件,则只返回第一条记录。因此,如果在单元格I4中查询1,您将得到名称Orchid,它对应于序列号1;如果在单元格I5中查询2,您将得到名称Zaohua,它对应于序列号2。
最外层的IFERROR是做什么用的?她用于保护VLOOKUP免受错误值的影响。
因为VLOOKUP每一行的查询序号都不一样,所以随着公式的不断下拉,序号也不断增加。如果您在A列中没有看到查询序列号,则意味着没有太多规范化内容。就在左边的记录里。该公式返回不正确的值。因此,我们使用IFERROR函数将错误值替换为空文本。
插画及文字创作朱洪忠
对于多个条件查找并提取数据和查找提取包含条件的数据的内容,你还有哪里不了解的?希望对大家有帮助!
No Comment