Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 7845|回复: 12

[分享] 查找与引用函数技巧-返回最后一条数据记录

[复制链接]
发表于 2007-9-20 18:54 | 显示全部楼层 |阅读模式

    在某些情况下,大家希望从已排序的数据中返回最后一条记录的信息,例如在附件所示的表格中,G4单元格中的公式可以返回某天某客户的最后一次进货量。

{=LOOKUP(G3,IF(A2:A10=G2,B2:D10))}

    思路解析:

  数据表中记录已经按日期和姓名进行了升序排列,按照LOOKUP函数的功能特点,公式返回8月8日张三最后一次进货量的记录。

   如果数据表的记录未经排序,如附件第二个表所示,改用下面的公式也可以返回相同的查找目标。

{=LOOKUP(9E+307,IF((A2:A10=G2)*(B2:B10=G3),D2:D10))}

    思路解析:

   公式中使用IF函数将不满足条件的记录进行过滤,重新生成内存数组。由LOOKUP函数对内存数组进行模糊查找,返回最大的数值,得到结果60。

    另外,也可以使用INDEX函数与MATCH函数的组合来实现,原理相同。

{=INDEX(D2:D10,MATCH(2,1/((A2:A10=G2)*(B2:B10=G3))))}


[此贴子已经被作者于2007-9-20 19:00:15编辑过]
 楼主| 发表于 2007-9-20 19:00 | 显示全部楼层
回复

使用道具 举报

发表于 2007-9-20 20:34 | 显示全部楼层
回复

使用道具 举报

发表于 2007-9-20 20:42 | 显示全部楼层

何必用数组公式?

=LOOKUP(1,0/((A2:A10=G2)*(B2:B10=G3)),D2:D10)

姓名排不排序都无所谓

回复

使用道具 举报

发表于 2007-9-20 20:45 | 显示全部楼层

有点不懂,"9E+307"是什么意思
回复

使用道具 举报

发表于 2007-9-20 21:01 | 显示全部楼层

学习了
回复

使用道具 举报

发表于 2007-10-5 19:18 | 显示全部楼层

先收藏,谢谢!
回复

使用道具 举报

 楼主| 发表于 2008-1-24 09:45 | 显示全部楼层

QUOTE:
以下是引用szjiaxb在2007-9-20 20:45:00的发言:
有点不懂,"9E+307"是什么意思

表示数值型数据

回复

使用道具 举报

发表于 2008-1-24 11:03 | 显示全部楼层

学习
回复

使用道具 举报

发表于 2009-12-8 11:51 | 显示全部楼层

为什么点击浏览该文件 下载下来是 asp格式的 打不开
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-6-2 07:53 , Processed in 0.261847 second(s), 3 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表