Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 7531|回复: 9

[分享] 通配符在数字和文本中的差别表现(原创)

[复制链接]
发表于 2015-4-5 19:40 | 显示全部楼层 |阅读模式
本帖最后由 as0810114 于 2015-4-5 20:01 编辑

     今日论坛答题遇到会员提问超过18位数字的重复性判断问题,用countif函数判断为什么加通配符*才行。以前上课学过,也没具体分析原因,今天突发兴致,就来探讨探讨 通配符*在数值和文本中的差别表现。
        首先来说说excel中的一些基本常识,作为今天探讨的基本前提:
        a,excel中数据有3种常见数据类型:文本(非数字型文本,数字型文本),数值(数字,时间),逻辑值。
        b,数字型文本是一类特殊的文本,通常指输入纯数字后通过设置文本格式或者在输入前加'(单引号)形成的。我们将其他类型的文本归为非数字型文本一类,通长为 字母,符号,汉字,数字或者其他语言混合形成的文本。
        c,excel数值的精度为15位,在不设置格式的情况下,输入超过15位长度的数值,从第16位开始都会自动变成0。
        d,通配符*用来代替一个或任意多个字符。
        下面来看看通配符在数字和文本中的差别表现:
        1,都为数值型:如下图A1,A2全为数值,B1输入公式=countif(A:A,A1&"*")下拉。

        我们会想:通配符*用来代替一个或任意多个字符,21不是符合 2&"*" 一类么,为什么结果为0,而不是2?上图中我们看到一个很有意思的结果,A4,B4分别为数值和数字型文本,虽然看起来是一样的,但是比较起来却返回结果False。也就是说数值21不匹配文本21&"*" 一类,所以B1结果为0。那为什么B2结果不为1?因为数值21不匹配文本21&"*" 一类,数值2也不匹配文本2&"*" 一类。
        2,数值型和数字型文本:再看看下图:A1变成数字型文本,这时候 文本21匹配文本21&"*" 一类,所以B1结果为1,文本21也匹配文本2&"*" 一类,所以B2结果为1。

        3,都为数字型文本或都为文本:下面的结果就更好理解了,A1,A2都是数字型文本,2,21都匹配文本2&"*" 一类,B1=2,21匹配文本21&"*"一类,B2=1。

        说到这里相信大家对通配符在数值和文本中的差别表现有所了解了。回到上面的问题,超过18位数字的重复性判断。如下图

        B5:B7中公式结果(为了便于区分,将数据变动的位置做了红色突出显示,不会对文本内容形成本质的改变),对比A5,A7在第17位的位置做了改变,A6在第15位改变。虽然A5,A7结果本质上不一样,但是公式COUNTIF(A$5:A$7,A5)的结果却是2。这是上面说到的第c条,excel数值的精度为15位,虽然A5:A7都是数字型文本,但是公式在运算(任意空白单严格输入公式=A1+0,结果为变成123456789123456000)的时候,自动忽略15位以上的数字或者说15位以上的数字都当做0来看(具体原因因为没有源代码参照,不知道具体的运算过程),所以把A5,A7当成一样的,B5,B7的结果返回2,而A6是第15位变动的,不会变成0,跟B5,B7不一样,所以结果为1。
        那为什么加了通配符结果就能区分A1和A3(同A5和A7)呢?因为A1&"*"返回的是  123456789123456789*  ,这是一个文本,且不是数字型文本,不能作四则运算,再怎么变化(其实关到笼子里变不了了),15位以上的不会变成0了,所以穿了个马甲,excel就认识这个小样了,所以能够区分差异。
        以上就是我说理解的 通配符在数值和文本中的差别表现,因为个人水平有限,有遗漏差错之处,还请指正,谢谢。

评分

参与人数 8 +110 金币 +20 收起 理由
李建军 + 3 神马都是浮云
youfang + 21 赞一个!
lisachen + 20
tgydslr + 33
JLxiangwei + 20 很给力!

查看全部评分

 楼主| 发表于 2015-4-5 19:45 | 显示全部楼层
晕死,截的图好好的,贴过来就成这个鸟样了,大家凑合着看。{:251:}
回复

使用道具 举报

发表于 2015-4-5 20:03 | 显示全部楼层
回复

使用道具 举报

发表于 2015-4-5 20:05 | 显示全部楼层
支持多下,a董又出江湖了
好久不见

点评

我这瞎整瞎整,见笑了  发表于 2015-4-5 20:07
回复

使用道具 举报

发表于 2015-4-5 20:11 | 显示全部楼层
顶下大兄。
回复

使用道具 举报

发表于 2015-4-5 20:35 | 显示全部楼层
支持原创               
回复

使用道具 举报

发表于 2015-4-5 21:52 | 显示全部楼层
打击盗版,支持原创
回复

使用道具 举报

发表于 2015-9-24 19:32 | 显示全部楼层
支持原创
回复

使用道具 举报

发表于 2015-12-25 15:00 | 显示全部楼层
支持原创
回复

使用道具 举报

发表于 2015-12-27 21:38 | 显示全部楼层
记得这个当初你是给我普及常识用的。哈哈。
回复

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-24 18:26 , Processed in 0.322801 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表