今天要说的这个所谓的“坑”,就是Excel中的数字和文本。
大家看下面B2和B3单元格有什么区别?
B2单元格左上角没有绿色的小三角符号,B3单元格有。
你以为我给你上观察课呢?其实这里有着更深层的意义。
B3单元格有,是因为Excel识别出这是以文本形式存储的数字,所以,Excel自动给加上了这个标识作为提醒。
点击绿色的小三角符号,可以弹出下拉菜单,提醒这是以文本形式存储的数字。
B2单元格的内容看起来也像是文本形式存储的数字,因为通常数字是靠右对齐,文本是靠左对齐。但是为什么没有绿色的三角符号呢?这是因为它根本就不是文本,本质上还是数字。
我们可以通过IsText函数来判断它是不是文本,或者通过IsNumber函数来判断它是不是数字。
遇到的坑
有同学直接将数字单元格通过设置单元格格式为文本,以为这样就转换成文本了,其实不然。它只是看起来像文本,实际上还是数字。
类似的,也有同学将文本单元格直接设置单元格格式为数字或常规,以为这样就能转换成数字。结果这回从外观上来看都不像是数字,单元格就没有变化。
使用Vlookup公式找不到正确的结果,因为查找值和查找区间的数据类型不一致,一个是文本,一个是数值。
输入较长位数的纯数字,比如身份证号等,最后几位莫名其妙地就变成了零。
怎么破?
直接设置单元格格式为文本不能将数字转换成文本,如果只有一个单元格,可以双击该单元格进入编辑状态,再按Enter键,数字就变成真正的文本了。
直接设置单元格格式为数字也不能将文本转换成数字,如果数字前面没有隐藏的单引号‘,我们可以将单元格格式设置为数字或常规,然后双击单元格进入编辑状态,再按Enter键,文本就变成真正的数字了。
如果Vlookup公式中查找值是数字,查找区间是文本,就在查找值后面加上&"",这样就会查找文本形式的数字。
如果Vlookup公式中查找值是文本型数字,查找区间是数字,就在查找值后面加上*1表示乘以1,或者前面加上两个负号(负负得正,这是小学的口诀~),或者在后面+0也行,只要是把查找内容更改为数学运算式就行(前提是不能改变原来的值),查找时就会查找数字了。
如果输入较长的全是数字的内容(超过15位后面输入的数字就会变成0,这是Excel软件本身的限制),可以先将单元格格式设置为文本格式再输入数据,也可以在输入数字之前先在英文状态下输入一个单引号'。
批量转换
1、最最常用而且好用的当属“分列”的方法。
数字、文本转换
方法:选中数字所在的列,点击【数据】选项卡下面的“分列”按钮,弹出对话框。前两步使用默认值即可,点两次“下一步”按钮后出现下面的界面。
如果是数字转换成文本,则在下面选择“文本”。
如果是文本转换成数字,则在下面选择“常规”,然后设置数据列的“单元格格式”为“常规”。
2、使用选择性粘贴将文本转换成数字
方法:在一个单元格中输入0,复制该单元格,选择性粘贴到目标区域,选择性粘贴选项中选择“加”。同样道理,可以输入1,复制并选择性粘贴,选择运算“乘”。
3、使用公式转换格式
在空白列输入=目标单元格&"",就可以将数字转换成文本
比如A15单元格有数字,输入公式=A15&""就转换成文本。
在空白列输入=--目标单元格,就可以将文本型数字转换成真正的数字。
比如A16单元格有文本型数字,输入公式=--A16,就得到真正的数字了。
同样的道理,我们可以输入+0、*1等等各种不改变原值的数学运算,都可以得到真正的数字。
我们还可以利用前文提到的绿色的小三角符号,在下拉菜单中有“转换为数字”,不过当数据量较大时,使用这种方法比较慢。使用分列的方法是我最常用的,也觉得最好用的方法。
关于这个“坑”就介绍到这里。你被“坑”过没?
本文由公众号 Excel轻松学 友情推荐
长按二维码关注
HR薪酬管理实务特训营 - 第2期
正式课时间:2017-5-23 — 6-22
讲师:木兰
课程详情:http://t.excelhome.net/thread-45000-1-1.html