回顾一下,在连载1和连载2的内容里,我们复习了Excel中最基本的数据类型,四大类型(文本字符型、数值型、逻辑型、缺点值)的数据是Excel运用场置的根本,但是我们只伶仃的知道他们的类型还不足,知道间隔灵巧利用还尚有较大间隔,马克思主义哲学唯物辩证法见告我们,联系具有普遍性、客不雅观性和多样性,一个事物内部各个要素是相互联系的,那么Excel中的各种数据类型之间究竟有什么联系?
本日,我们走到Excel升级之路的连载3:数据类型检测与相互转换技巧
首先考虑一个问题,对付已经存在于Excel单元格中的数据,我们如何确认其数据类型?

有人大概会说直接不雅观察,凭借履历进行判断,但是这样做并不能够100%确定,而且函数公式运行过程中的一些数据也不会终极涌如今单元格里。
不能确定意味着会涌现差错,而关键时候不失足误才可以旋转乾坤,东汉·班固《汉书·赵充国传》中的实例见告我们:“百闻不如一见,兵难隃度,臣愿驰至金城,图上方略。”“百闻不如一见,百见不如一干”,通过实践进行考验才是不二法门。
Excel中供应了丰富的内置检测函数,而且非常方便利用,他们统称为is函数,我们通过is函数问Excel问题,Excel会以是(TRUE)或否(FALSE)来回答我们。
1、检测是否是文本字符型数据:istext函数
如果结果为TRUE,则检测内容是文本字符型数据。
从反方向来看,Excel中还有一个检测是否不是文本字符型数据的函数:isnontext函数
把稳:空格是文本,空单元格不是文本,以是用isnontext函数检测空单元格A1是否不是文本?
答案:是,不是文本,Excel返回TRUE
2、检测是否是数值型数据 :isnumber函数
如果结果为TRUE,则检测内容是数值型数据。
我们再次以日期举个例,检测一下,可以看到日期型数字便是数值型数据。
在数值型数据中,偶数和奇数也是可以进行考验的,他们利用的便是is和英语中偶数even、奇数odd的单词组合。
检测是否是奇数:isodd函数
检测是否是偶数:iseven函数,不要忘却0是偶数。
3、检测是否是逻辑型数据 :islogical函数
如果结果为TRUE,则检测内容是逻辑型数据。
4、检测缺点值和空单元格
既然Excel在碰着缺点时会返回不同的缺点值,那就解释这些缺点值也是可以区分的。
Excel中供应了iserror函数、isna函数、iserr函数来进行考验,他们稍有差别,这里不展开,通过Excel的提示可以进行选择。
其余,Excel中还有一个检测是否为空单元格的函数:isblank函数。
前面已经讲过,空格是文本,空单元格不是文本,isblank函数可以见告我们,空单元格的确便是空。
5、其他
不知道你把稳到了没有,上面的各种检测函数一次只能检测一种数据类型,也即我们可以通过他们验证自己的猜想,那么能不能让Excel主动见告我们数据是什么类型呢?
当然可以!
末了还有两个神级检测函数:type函数和error.type函数,他们可以以特定的数值返回检测结果,特定的数值就代表要检测的数据的数据类型,这是在函数公式中的高等用法。
例如用type函数检测一下“穿越韶光”,其返回值是2,对照下面的编码表,我们可知Excel见告我们“穿越韶光”是文本字符型数据。
二、数据类型转换技巧
Excel中的数据类型并不是伶仃的,彼此之间可以相互转换。
如何将一种类型的数据转换为另一种类型的数据呢?
通过可视化的“设置单元格格式”是最大略的方法,但是,如果涉及到Excel函数、公式乃至编程运用,“设置单元格格式”就不是最好的方案了。
其余,我们有时会觉得很难读懂别人写的公式的意思,个中有一个主要的缘故原由便是对数据类型转换运用的不灵巧,因此节制转换数据类型的函数或分外运算、分外公式符号是十分必要的。
接下来,我们从输入文本型数据开始,按照文本型数据、数值型数据、逻辑型数据依次展开,看一看上文讲到的三种数据类型(文本型、数值型、逻辑型)可能涌现的转换情形和技巧。
借助之条件到的英文单引号 ' ,输入文本字符型的文本数字:770
1、文本型数据的转换:文本型==》数值型
这是文本型数字转换为数值型数字的方法。为什么须要这种转换?由于文本型数字是不能参与数学运算的。为了进行加减乘除等运算,我们须要利用数值型数字。
(1)符号法:
在文本型数字前面加两个减号- -试试:
看到了没有,B1单元格中的770就变成了靠右对齐的数字型。
我们可以通过刚才学习的isnumber函数检测一下B1中的770是否为数值型,
结果为TRUE,确认无误。
换一下,在文本型数字的后面乘以1 (1)
我们将文本型的770乘以1,也可以将它转换为数值型。
很奇特是不是?
类似地,通过除以1 (/1),求1次幂 (^1),加0 (+0) ,减0 (-0),也可以实现文本型数字向数值型的转换。
但是如果你想考试测验加号法,例如=++A1 或 =+A1 则是不可以的,这样的结果仍旧为文本型;
那么连续,
为什么最初的减号法 =- -A1可以,
为什么要用两个减号?
其实用一个减号也可以实现文本型到数值型的转换,不过这样值就变了,成了相反数。(=-A1,可以实现将A1中文本型的770转换为数值型的-770)
因此可以把两个减号的浸染理解为负负得正。
同理,四个减号也是可以的。
偶数个减号都是可以的。
由此,上面更多的求1次幂^1,加0 ,减0就可以理解了。
基本都思路便是让文本型数字在保持实际值不变的条件下参与一下运算,文本型数字就转换为数值型了。
(2)函数法
我们可以通过n函数或者value函数,将文本型数字转换为数值型。
这里不须要分外的先容,直策应用函数即可。
2、数值型数据的转换:数值型==》文本型
(1)符号法:
除了最上面提到的英文单引号 ' ,还有其他方法可以使输入到Excel中的数值型数字转换为文本型数字存储。
来看一下,你清楚代码 &"" 的浸染吗?
通过在单元格后追加&"" 代码,即可将数值型数字转换为文本型数字。
&是连接两个文本字符串(串连)的运算符。
""是两个英文双引号。
A1中是数值型数据600,在B1中输入=A1&""之后,B1返回的600便是靠左对齐的文本型数字600
不过和采取英文单引号 ' 不同的是,Excel默认不会添加绿色的三角标记。
(2)函数法:
我们可以利用text函数将数值型数字转换为文本型数字。
Text函数的功能十分强大,它可以按照给定的格式将数值型数字转换为文本型数字。这里不详细展开。
3、数值型数据的转换:数值型==》逻辑型
数值型的数字也是可以转换为逻辑型数据的,这里须要借助一下if函数
=IF(A1,TRUE)
任何非0的数值型数字通过if函数都可以返回逻辑型TRUE
数值型数字0通过if函数可以返回逻辑型FALSE
这是一种比较奥妙的做法。
4、逻辑型数据的转换:逻辑型==》文本型
借助数值型转换为文本型时提到的分外符号&"" 即可,但这种情形险些不用。
5、逻辑型数据的转换:逻辑型==》数值型
(1)符号法
与上面文本型数字转换为数值型类似,逻辑值实行加减乘除的任意运算也可转换为数值型。
1 /1 +0 -0 两个负号- - 乘幂^1都可以实现:TRUE会变成1,FALSE会变成0
其余,多个逻辑型数据本身可以直接实行运算(此时,TRUE相称于1,FALSE相称于0),结果也为数值型;
把稳:在某些函数中,不支持逻辑值直接实行运算,缘故原由是有些函数在不同的情形下会忽略非数值数据,必须先行转换为数值型之后才能在函数中进走运算。
下面是一个涉及SUM函数的实例,A1、A2中都是逻辑型数据TRUE,琢磨一下都是相加求和,运算的结果为什么有时是2有时是0?
公式
结果
=A1+A2
2
=SUM(A1:A2)
0
=SUM(A1,A2)
0
=SUM(--A1,--A2)
2
=SUM(TRUE,TRUE)
2
阐明一下:
Sum函数会忽略单元格引用中的逻辑型数值和文本型数值,在这里忽略的意思可以认为sum把逻辑型数值和文本型数值当不存在来看待。
但是当我们把逻辑型数值和文本型数值直接输入sum函数中,当做sum函数的参数时,sum则不会忽略他们。
这个点往后还会再提及。
(2)函数法
直策应用上面提到的n函数也可以将逻辑型的数据转换为数值型。
综上,在写函数公式的时候,该当利用什么类型的数据就要写上什么类型的数据,有些时候,虽然数据类型不对,但彷佛Excel也给出来精确的结果,这是函数底层的容错性起了浸染,不过可想而知,那样的公式是多么混乱,多么随意马虎让人稠浊,看不明白是什么意思。
好了,以上便是连载3的全部内容,没有看过前面连载的可以点击头像或链接跳转:
穿越韶光•Excel升级之路连载1:Office2010安装体验及个性设置
穿越韶光•Excel升级之路连载2:打牢Excel 2010中的数据类型根本
更多精彩,敬请关注。
(原创连载,个人不雅观点保留,禁止任何未经授权的非本人账号复制文章到其他平台发布)