Excel精英培训网

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

[已解决]如何通过查找二列内容,返回第三列中相对应的正确值?

[复制链接]
发表于 2013-5-26 14:33 | 显示全部楼层 |阅读模式
如附件,想通过大型号,与小型号,找出准确的存放位置。
主要是小型号的单元格有多种不同的值。实在不知道如何处理,还请高手帮助解答,具体的如附件表格

要求公式能尽量减少CPU计算,因为实际的表格中数据有几千行,谢谢!
最佳答案
2013-5-26 14:50
本帖最后由 ligh1298 于 2013-5-26 14:53 编辑

数组公式(把鼠标放在编辑栏中,Ctrl+Shift+Enter三键同时按!)
=INDEX(D:D,SMALL(IF((A2:A3000=F3)*(ISNUMBER(FIND(G3,B2:B3000))),ROW(2:3000),4^8),ROW(A1)))

求查二列内容,返回第三列准确值.rar

2.36 KB, 下载次数: 91

多条件查找

发表于 2013-5-26 14:49 | 显示全部楼层
  1. =INDEX(D:D,MAX(COUNTIF(OFFSET($B$1,ROW($1:$9999),),"*"&G3&"*")*($A$2:$A$10000=F3)*ROW($2:$10000)))
复制代码
数组公式  不清楚多少行  卡的话可以将10000改成你数据的行数    ,9999改成你数据的函数再减1吧
回复

使用道具 举报

发表于 2013-5-26 14:50 | 显示全部楼层    本楼为最佳答案   
本帖最后由 ligh1298 于 2013-5-26 14:53 编辑

数组公式(把鼠标放在编辑栏中,Ctrl+Shift+Enter三键同时按!)
=INDEX(D:D,SMALL(IF((A2:A3000=F3)*(ISNUMBER(FIND(G3,B2:B3000))),ROW(2:3000),4^8),ROW(A1)))
回复

使用道具 举报

 楼主| 发表于 2013-5-26 15:07 | 显示全部楼层
谢谢二位大侠出手,学习了!
回复

使用道具 举报

发表于 2013-5-26 15:09 | 显示全部楼层
本帖最后由 ligh1298 于 2013-5-26 15:50 编辑

如果数据特别多,用数组运行可能就慢些。
回复

使用道具 举报

 楼主| 发表于 2013-5-26 15:19 | 显示全部楼层
ligh1298 发表于 2013-5-26 15:09
如果数据特别多,就用VBA吧。这个例子是用VBA做的,点击按钮就可实现。要启用宏!

非常感谢,VBA确实更加强大,而且合理。
回复

使用道具 举报

发表于 2015-12-29 22:41 | 显示全部楼层
4^8这个是什么意思啊
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-11 12:54 , Processed in 0.331579 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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