EXCEL如何判断数字的转换,什么时候该用--转换数字,什么时候不需要;还有哪些函数必须转换,多谢!
发布网友
发布时间:2022-04-27 00:08
我来回答
共2个回答
热心网友
时间:2023-11-13 07:36
这主要是由所使用的函数返回的结果是文本型式的数字还是数值型式的数字,再视乎公式的实际应用情况决定要不要转换的。
函数返回的结果为文本形式的数字一般常见的就是字符截取函数,如MID()、LEFT()、RIGHT()等。当遇上这类函数时,如果外面套求和函数或是排序函数把前者得到的结果作二次运算时就要加 -- 转换。 而返回的结果的数字是数值形式的函数常见的是FIND()、Match()、COUNTIF()。。等。
--MID(E2,{1,2,3},1)
当MID函数返回的结果是数字时,它默认是文本形式的数字,而公式中外面的SMALL是排序函数,它要求排序的数字必须是数值形式的数字,这就跟MID函数产生冲突了,所以这时在MID函数外面加两个减号 -- 把MID函数返回的结果转化为数值形式的数字就能解决这个问题了。
FIND(MID(E2,{1,2,3},1),E2)
而FIND函数返回的结果默认就是数值形式的数字,所以直接用SUM函数求和就行,无需加 -- 再次转换。
还有一种情况是无需转换的,就是当文本数字与文本数字做四则运算(乘、除、加、减)时,在运算的过程中EXCEL是自动转换的,如前面的MID(E2,{1,2,3},1) 当与其别的数字或别的函数返回的数字结果做四则运算时,如相乘: 1*MID(E2,{1,2,3},1) 这样的形式则不需要加 -- 转换。且与 --MID(E2,{1,2,3},1) 都是一样的原理。
提问中的公式有的写法格式存在错误,应更改为这样:
=IF(SUM(FIND(MID(E2,{1,2,3},1),E2))<6,ABS(SMALL(--MID(E2,{1,2,3},1),2)-RIGHT(E3)))
公式的意思应是,E2的内容应为3位数字,当E2的值不是连续的数字,如:123、456、789,则把E2中的第2小的数值(在这公式中也可以理解为中间值)减去E3最后一位数字所得到的差再取绝对值。
热心网友
时间:2023-11-13 07:37
公式好像错误的吧,MID(E2,1,2,3} 就这条就执行不了的追问MID(E2,1,2,3},1)这个才是,你取出来一部分当然不行!
热心网友
时间:2023-11-13 07:36
这主要是由所使用的函数返回的结果是文本型式的数字还是数值型式的数字,再视乎公式的实际应用情况决定要不要转换的。
函数返回的结果为文本形式的数字一般常见的就是字符截取函数,如MID()、LEFT()、RIGHT()等。当遇上这类函数时,如果外面套求和函数或是排序函数把前者得到的结果作二次运算时就要加 -- 转换。 而返回的结果的数字是数值形式的函数常见的是FIND()、Match()、COUNTIF()。。等。
--MID(E2,{1,2,3},1)
当MID函数返回的结果是数字时,它默认是文本形式的数字,而公式中外面的SMALL是排序函数,它要求排序的数字必须是数值形式的数字,这就跟MID函数产生冲突了,所以这时在MID函数外面加两个减号 -- 把MID函数返回的结果转化为数值形式的数字就能解决这个问题了。
FIND(MID(E2,{1,2,3},1),E2)
而FIND函数返回的结果默认就是数值形式的数字,所以直接用SUM函数求和就行,无需加 -- 再次转换。
还有一种情况是无需转换的,就是当文本数字与文本数字做四则运算(乘、除、加、减)时,在运算的过程中EXCEL是自动转换的,如前面的MID(E2,{1,2,3},1) 当与其别的数字或别的函数返回的数字结果做四则运算时,如相乘: 1*MID(E2,{1,2,3},1) 这样的形式则不需要加 -- 转换。且与 --MID(E2,{1,2,3},1) 都是一样的原理。
提问中的公式有的写法格式存在错误,应更改为这样:
=IF(SUM(FIND(MID(E2,{1,2,3},1),E2))<6,ABS(SMALL(--MID(E2,{1,2,3},1),2)-RIGHT(E3)))
公式的意思应是,E2的内容应为3位数字,当E2的值不是连续的数字,如:123、456、789,则把E2中的第2小的数值(在这公式中也可以理解为中间值)减去E3最后一位数字所得到的差再取绝对值。
热心网友
时间:2023-11-13 07:37
公式好像错误的吧,MID(E2,1,2,3} 就这条就执行不了的追问MID(E2,1,2,3},1)这个才是,你取出来一部分当然不行!