找回密码
 注册
快捷导航
查看: 2424|回复: 7

【请教】excel高手请进

[复制链接] |自动提醒
阅读字号:

9180

回帖

82

积分

1万

资产值

至尊会员I Rank: 4Rank: 4Rank: 4Rank: 4

注册时间
2003-9-18
铜牌荣誉勋章(注册8年以上会员)
发表于 2012-3-5 13:15:11| 字数 350| - 中国–北京–北京 中国电信北京研究院 | 显示全部楼层 |阅读模式
想要这样一个功能,不知excel能否实现。

有A、B两个excel文件(各有一个sheet);
A文件就两列,一列是学号、一列是姓名;
B文件有若干列,其中一列是学号,我希望当我填入一个学号的时候,能够自动在另一列出现该学号对应的姓名;
即我只要在B文件中填入学号,该文件能自动到A文件中查找该学号对应的姓名,并自动出现在B文件的下一列中。

+++++++++++++
上面的问题已经知道如何解决了,现在又遇到难题了。
问题基本同上,区别是:B文件的学号所在列不但包含学号,还包含其他数字,这些数字用空格(tab)隔开。比如:
123    20120302
上面这两个数字在同一个单元格内。现在我只想匹配第一个数字(123),不知还有办法做到吗?

请高手指点。谢谢!

[ Edited by  nt941 on 2012-3-6 14:26 ]
X61_T9300/X61_T8100/X61S_L7500/T60_T2400

3万

回帖

319

积分

3万

资产值

至尊会员III Rank: 4Rank: 4Rank: 4Rank: 4

注册时间
2003-2-6
铜牌荣誉勋章(注册8年以上会员)银牌荣誉勋章(注册10年以上会员)铜牌荣誉勋章(注册8年以上会员)金牌荣誉勋章(注册20年以上会员)银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-5 13:22:23| 字数 11| - LAN | 显示全部楼层
vlookup能实现的
IBM A31P R9H, Pentium 4-2.0G  RAM:1GB 60GB+40GB  UXGA  PalmIIIXE  Nikon D1X 50/1.8D
Lenovo Thinkpad  T60P 7200.2,2G 100G WSXGA+
回复 支持 反对

使用道具 举报

1万

回帖

189

积分

2万

资产值

至尊会员II Rank: 4Rank: 4Rank: 4Rank: 4

注册时间
2002-10-30
铜牌荣誉勋章(注册8年以上会员)银牌荣誉勋章(注册10年以上会员)
发表于 2012-3-5 13:30:23| 字数 56| - 中国–江西–赣州 电信 | 显示全部楼层
跨文件引用
  ='d:\abc\driver\[book1.xls]sheet1'!b2
vlookup
iserror
x61+BlackBerry9790
回复 支持 反对

使用道具 举报

9180

回帖

82

积分

1万

资产值

至尊会员I Rank: 4Rank: 4Rank: 4Rank: 4

注册时间
2003-9-18
铜牌荣誉勋章(注册8年以上会员)
 楼主| 发表于 2012-3-5 14:05:58| 字数 41| - 中国–北京–北京 中国电信北京研究院 | 显示全部楼层
感谢两位帮助,我自己也基本摸索出来了!
excel的功能真是强大。有问题再请教大家。
X61_T9300/X61_T8100/X61S_L7500/T60_T2400
回复 支持 反对

使用道具 举报

9180

回帖

82

积分

1万

资产值

至尊会员I Rank: 4Rank: 4Rank: 4Rank: 4

注册时间
2003-9-18
铜牌荣誉勋章(注册8年以上会员)
 楼主| 发表于 2012-3-6 14:25:01| 字数 133| - 中国–北京–北京 中国电信北京研究院 | 显示全部楼层
又遇到难题了。

问题基本同上,还是见主贴的例子,区别是:B文件的学号所在列不但包含学号,还包含其他数字,这些数字用空格(tab)隔开。比如:
123    20120302
上面这两个数字在同一个单元格内。现在我只想匹配第一个数字(123),不知还有办法做到吗?

请高手指点。谢谢!
X61_T9300/X61_T8100/X61S_L7500/T60_T2400
回复 支持 反对

使用道具 举报

9180

回帖

82

积分

1万

资产值

至尊会员I Rank: 4Rank: 4Rank: 4Rank: 4

注册时间
2003-9-18
铜牌荣誉勋章(注册8年以上会员)
 楼主| 发表于 2012-3-6 14:53:00| 字数 295| - 中国–北京–北京 中国电信北京研究院 | 显示全部楼层
想到了一个解决方案,就是用LEFT函数截取该字段中的前几位,如:
=VLOOKUP(LEFT(A1,3),B!A1:B9,2,FALSE)
但不知为何不行。应该是VLOOKUP这个函数没有识别出LEFT(A1,3)的结果。是不是嵌套函数的格式有误?

这个方案有点问题。由于学号长度不固定,这里LEFT函数截取几个字符不好确定,截多了会含有空格,导致到文件B中匹配不出来。
继续研究……

问题解决了!可以用trim函数去掉截取部分的空格。当然这个方法有点笨,如果有能直接根据空格(或tab符)截取单元格内字符的函数就好了
不麻烦大家了。谢谢!

[ Edited by  nt941 on 2012-3-6 15:01 ]
X61_T9300/X61_T8100/X61S_L7500/T60_T2400
回复 支持 反对

使用道具 举报

31

回帖

0

积分

761

资产值

入门会员 Rank: 1

注册时间
2006-11-6
发表于 2012-3-28 22:18:04| 字数 15| - 中国–山东–济南 电信 | 显示全部楼层
查询下空格的位置,再截取就好了
回复 支持 反对

使用道具 举报

31

回帖

0

积分

761

资产值

入门会员 Rank: 1

注册时间
2006-11-6
发表于 2012-3-28 22:18:30| 字数 21| - 中国–山东–济南 电信 | 显示全部楼层
好像是用FIND, 具体的不记得,好久不用了
回复 支持 反对

使用道具 举报

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

本版积分规则

Powered by Discuz! X3.5 © 2001-2023 Comsenz Inc

GMT+8, 2025-1-19 07:02 , Processed in 0.109653 second(s), 36 queries , Gzip On, OPcache On.

手机版|小黑屋|安卓客户端|iOS客户端|Archiver|备用网址1|备用网址2|在线留言|专门网

返回顶部