EXCEL模糊查询函数公式

比如ABCD花光集团张三北京中关村美涛集团李四南京珠江路沙曼集团王五南京中央路然后做一个查询,就是比如在D1(填写:南京)下面就出现上面2个列表美涛集团李四南京珠江路沙曼... 比如
A B C D
花光集团 张三 北京 中关村
美涛集团 李四 南京 珠江路
沙曼集团 王五 南京 中央路

然后做一个查询,就是比如在
D1
(填写:南京)
下面就出现上面2个列表
美涛集团 李四 南京 珠江路
沙曼集团 王五 南京 中央路
(填写:花光)
下面就出现
花光集团 张三 北京 中关村

类似这样的,只要输入其中有的字,不管是地址,名字,公司,都能把相应有的全部列出来,求高手指点!!!相当有难度的哦,非高手绝对做不出的哇
展开
 我来答
绿衣人敲门
2015-10-12 · 知道合伙人软件行家
绿衣人敲门
知道合伙人软件行家
采纳数:18765 获赞数:63766
毕业于西北大学计算机网络技术专业,现在在西安电力学院进行网络推广维护工作!

向TA提问 私信TA
展开全部

1.首先看一下原始数据,A列是一些公司全名,在B1处输入一个简称或者说关键字(必须是在A列某个文本中连续包含的关键字),要在C1返回A列对应的全称。

2.双击C1单元格,输入公式

=VLOOKUP("*"&B1&"*",A1:A7,1,)

回车后C1单元格就返回了B1对应的A列公司全称。


3.VLOOKUP通配符方法介绍:

=VLOOKUP("*"&B1&"*",A1:A7,1,)代表的含义是在A1:A7的范围内查找包含B1关键字的单元格,找到后返回A1:A7第一列的内容。函数中的“*”代表任意字符,也就是说在A1:A7内查找B1文本前后任意字符的内容,也就是包含B1文本的意思。其中的1代表返回A1:A7数据区域第一列结果,最后一个逗号后省略参数代表的是精确匹配,也可以输入0或FALSE。


4.本例也可以用LOOKUP函数完成。

双击C1单元格,输入公式=LOOKUP(1,0/FIND(B1,A1:A7),A1:A7)即可。


5.来看一下LOOKUP运算过程。

首先FIND(B1,A1:A7)表示在A1:A7内查找B1内容,如果查找不到则返回错误值,如果查到返回在文本中的位置。

6.0/FIND(B1,A1:A7)这部分让上一步返回的值参与运算,如果上一步返回的是数字,结果就返回0否则仍返回错误值。

7.最后LOOKUP(1,0/(数组),A1:A7)部分返回“数组”中最后一个小于等于1(也就是“数组”中的0)的值对应的A1:A7的内容,也就是全称。

梦是镜中花
推荐于2016-02-20 · TA获得超过3803个赞
知道小有建树答主
回答量:631
采纳率:66%
帮助的人:640万
展开全部
这种问题没有必要做函数和公式的,EXCEL提供的“自动筛选”功能可实现,花九牛二虎之力做得出来也是多此一举!方法如下:
选中全部筛选区域单元格,然后点“数据”菜单》“筛选”》“自动筛选”》点C列下拉箭头》“自定义”》“自定义自动筛选方式”显示行左边下拉箭头选“包含”,右边填入“南京”或“花光”,确定即可。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
函安白zK
2012-03-01 · TA获得超过3993个赞
知道大有可为答主
回答量:1434
采纳率:50%
帮助的人:705万
展开全部
假设上述数据为1-3行,
A4填写要查询的字,在A5输入下面的公式,并右拉到D5单元格。
下拉几行,把最后的1修改为2,或3输入其他匹配到的行。
公式用Row来定位,更好的办法是增加一列序号。
=INDEX(A$1:A$3,SMALL(IF(ISNUMBER(FIND($A$4,$A$1:$A$3&$B$1:$B$3&$C$1:$C$3&$D$1:$D$3)),ROW($A$1:$A$3),99999),1))
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
duguyuju
2012-03-01 · TA获得超过444个赞
知道小有建树答主
回答量:261
采纳率:0%
帮助的人:104万
展开全部
如果只用函数,不管是地址,名字,公司,我想很难做到
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式