vlookup函数求教,以及单元格文本与数字格式求教!
现有一个excel文件,共有两个sheet,sheet1是正式文件,要打印出来的,sheet2是一个小数据库,里面有A、B共2列,A列为数字字母为组合的代码,B列为这个代...
现有一个excel文件,共有两个sheet,sheet 1是正式文件,要打印出来的,sheet 2是一个小数据库,里面有A、B 共2列,A列为数字字母为组合的代码,B列为这个代码对应的生产厂家。例如:A1为52305 ,B1为:中国第一厂,A2为 47E05,B2为 中国第二厂,A3为:4D021,B3为北京第十厂,A4为23601,B4为沈阳第五厂,以此对应。sheet 2 样式 如下
A B
1 52305 中国第一厂
2 47E05 中国第二厂
3 4D021 北京第十厂
4 23601 沈阳第五厂
零件代码为8位,例如,中国第一厂生产的第一个零件代码为:52305001,中国第二厂生产的第10个零件代码为:40E05010
现要求,在 sheet 1 的一个单元格(例如:E1)里输入零件代码,E2自动出现这个零件代码的生产厂家。
我在E2单元格输入函数:=vlookup(left(E1,5),sheet2!A:B,2,0),但出现错误,不能查找。
查找原因,发现sheet 2 里面输入的代码“47E05”被识别为 47 乘以 10的五次方,被识别为科学计数法,显示成4700000。因此把所有单元格改为“文本”格式重新输入,这时,sheet1 的 E1 里输入 零件代码“52305180”,E2 公式的计算报错:#N/A
,但E1 输入代码“4D021046”E2 正确显示“北京第十厂”,后验证,只要E1 里输入带字母的代码,都可以正常计算,如果是全数字的代码就不行。
后来网上搜索答案,发现一个解决方案:将E2的公式变为:=VLOOKUP(LEFT(E1,5)+0,Sheet2!A:B,2,0),就是在 left(E1,5)后面 +0 ,这时输入零件代码“52305180”,可以正常显示“中国第一厂”,但输入“4D021046”计算结果报错:“#VALUE!”,这次变成全数字可以计算,带字母的又不行了。
就没有一个两种情况都可以的吗?
可以再vlookup函数里再加入 if 函数 或者 and 函数解决这个问题吗?
搜索了很久,都找不到答案,问遍了身边的人,没一个人会的。没办法,到这个来等待高手!还望不吝赐教!
太好了!真是碰到高手了!谢谢你, redstarw
按照你的操作,成功了!
能请你顺便说说原理吗?而且操作完之后,Sheet 2 里面的代码 全部带个绿三角形,点击提示:以文本形式储存的数字!
谢谢“hzrvqb”的回答。你说的操作方法我试过了,和我在vlookup公式里加一个left公式的结果是一样的。还是不行。确实是 单元格 文本格式和数字格式的问题。
sheet 2 里面的 A列,我虽然手动的将整列选择在单元格属性里选择了文本,但还不是真正的文本,按照“redstarw”的数据、分列操作后,才变成真正的文本。才解决了问题!
但是我不知道为什么 单元格属性 里不能转换成真正的文本,为什么要这样做,而且不知道分列这个功能到底是干什么的 展开
A B
1 52305 中国第一厂
2 47E05 中国第二厂
3 4D021 北京第十厂
4 23601 沈阳第五厂
零件代码为8位,例如,中国第一厂生产的第一个零件代码为:52305001,中国第二厂生产的第10个零件代码为:40E05010
现要求,在 sheet 1 的一个单元格(例如:E1)里输入零件代码,E2自动出现这个零件代码的生产厂家。
我在E2单元格输入函数:=vlookup(left(E1,5),sheet2!A:B,2,0),但出现错误,不能查找。
查找原因,发现sheet 2 里面输入的代码“47E05”被识别为 47 乘以 10的五次方,被识别为科学计数法,显示成4700000。因此把所有单元格改为“文本”格式重新输入,这时,sheet1 的 E1 里输入 零件代码“52305180”,E2 公式的计算报错:#N/A
,但E1 输入代码“4D021046”E2 正确显示“北京第十厂”,后验证,只要E1 里输入带字母的代码,都可以正常计算,如果是全数字的代码就不行。
后来网上搜索答案,发现一个解决方案:将E2的公式变为:=VLOOKUP(LEFT(E1,5)+0,Sheet2!A:B,2,0),就是在 left(E1,5)后面 +0 ,这时输入零件代码“52305180”,可以正常显示“中国第一厂”,但输入“4D021046”计算结果报错:“#VALUE!”,这次变成全数字可以计算,带字母的又不行了。
就没有一个两种情况都可以的吗?
可以再vlookup函数里再加入 if 函数 或者 and 函数解决这个问题吗?
搜索了很久,都找不到答案,问遍了身边的人,没一个人会的。没办法,到这个来等待高手!还望不吝赐教!
太好了!真是碰到高手了!谢谢你, redstarw
按照你的操作,成功了!
能请你顺便说说原理吗?而且操作完之后,Sheet 2 里面的代码 全部带个绿三角形,点击提示:以文本形式储存的数字!
谢谢“hzrvqb”的回答。你说的操作方法我试过了,和我在vlookup公式里加一个left公式的结果是一样的。还是不行。确实是 单元格 文本格式和数字格式的问题。
sheet 2 里面的 A列,我虽然手动的将整列选择在单元格属性里选择了文本,但还不是真正的文本,按照“redstarw”的数据、分列操作后,才变成真正的文本。才解决了问题!
但是我不知道为什么 单元格属性 里不能转换成真正的文本,为什么要这样做,而且不知道分列这个功能到底是干什么的 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询