excel 替换特殊符号

www.cibaojian.com 讨论

    有时候excel里有除了中文外的字符,我们不想要怎么办?手动删?你out了
    
excel 替换特殊符号

    直接输入公式=MID(A19,MATCH(" ",MIDB(A19,ROW(INDIRECT("1:"&LENB(A19))),1),),LENB(A19)-LEN(A19))
    然后按ctrl+shift+enter,奇迹出现
    
excel 替换特殊符号

    解题的思路是,先判定首个汉字的位置,然后计算汉字的个数,最后用MID来提取之。
    公式的关键,是根据字节查找。
    简单的说,字符有单字节和双字节两种类型,英文字母、数字、符号属于单字节,汉字属于双字节。
    比如“汉”,这是一个字符,两个字节。
    LEN返回字符串中字符的个数,它是按字符来计数,不论单字节还是双字节,都记为1,LENB也返回字符串中字符的个数,和LEN所不同的是,它是按字节来计数,单字节,记为1,双字节(即汉字),记为2。
    LEN(“汉”)的结果是1,汉是一个字符。
    LENB(“汉”)的结果是2,汉是两个字节。
    同理,下面这个公式可以返回一个字符串中汉字的个数。
    LENB(B3)-LEN(B3)
    MIDB函数和MID函数类似,自字符串的指定起始位置,提取指定长度的字符串。和MID函数所不同的是,MID是按字符长度来提取,MIDB则是按字节长度来提取。
    还是比如“汉”。
    MID(“汉”,1,1),自第一个位置,提取一个字符,结果为汉。
    MIDB(“汉”,1,1),自第一个位置,提取一个字节,由于”汉”是两个字节,只提取一个字节的话,结果为——空格。
    
excel 替换特殊符号

    INDIRECT是对单元格的引用。
    
excel 替换特殊符号

    

标签: