excel中有数字和汉字如何提取数字 (excel表格中含有汉字数字如何排序)

在工作中会遇到单元格内有数字和汉字,需要将各个单元格的数字进行相关运算,这时就需要提取单元格内的数值后进行运算。例如下表,需要计算一天的花费总额:

excel中有数字和汉字如何提取数字,excel单元格有文字怎么提取数字

在这里需要用到MIDB,SEARCHB,LEN,LENB函数,公式如下:

=--MIDB(A2,SEARCHB("?",A2),LEN(A2)*2-LENB(A2))

其中:

LEN(A2):这个函数用于获取单元格A4中字符的数量,包括汉字、英文字母、数字等所有字符。此例子中结果为8(8个字符)

LENB(A2):这个函数用于获取单元格A4中每个字节的字符数。对于双字节字符集 (DBCS) 中,一个汉字占两个字节,而英文字母和数字只占一个字节。例子中结果为13(5*2+3)

LEN(A2)*2-LENB(A2):这个公式的含义是,首先通过LEN(A2)计算出A4单元格中所有字符的数量,然后乘以2(因为每个汉字在DBCS中占两个字节),最后减去LENB(A2)的结果(即A4单元格中每个字节的字符数),就可以得到A4单元格中数字的数量(含正负号及小数点)。

SEARCHB("?", A2): ("?")在单元格A2中查找单字节所在的位置,即第几位。例子的结果为9。

MIDB(A2, ..., ...): 从单元格A2中的文本字符串提取字符。第一个参数是要从中提取字符的字符串,第二个参数是起始位置,第三个参数是要提取的字符数量。

- 用来将提取出来的字符串转换为数值,此时结果为相反数,因此需要增加一个-,最后公式变成: =--MIDB(A2,SEARCHB("?",A2),LEN(A2)*2-LENB(A2))

最后得到如下结果:

excel中有数字和汉字如何提取数字,excel单元格有文字怎么提取数字

注意:此方法不适用于含有字母及其他符号的单元格。