在EXCEL表格中有一列单元格内既有文字又有数字,如何把这列单元格内的数字进行和的计算?

2025-01-08 08:28:11
推荐回答(4个)
回答1:

楼主, 假设A1="苹果30元", A2="桃子20元", 请在B1输入下面公式:
=SUMPRODUCT(--MIDB(A1:A2,SEARCHB("?",A1:A2,1),2*LEN(A1:A2)-LENB(A1:A2)))

原理及解释: 您所提供的数据中,数字是半角,汉字是全角,将半角部分提取出来就是数字提取。

SEARCHB("?",A1,1) 找到半角字符在A1中的起始位置
2*LEN(A1)-LENB(A1) 得到半角字符的长度
MIDB(A1,SEARCHB("?",A1,1),2*LEN(A1)-LENB(A1))在A1中从半角字符的起始位置截取长度为半角字符长度的字符串(也就是数字部分提取)
--MIDB(A1,SEARCHB("?",A1,1),2*LEN(A1)-LENB(A1)) 因为MIDB的结果还是文本,“--”使其数字化,以便计算.

=SUMPRODUCT(--MIDB(A1:A2,SEARCHB("?",A1:A2,1),2*LEN(A1:A2)-LENB(A1:A2))) 将上公式的A1换成A1:A2,使用能够对多单元格进行提取。再用sumproduct对所有结果进行求和。

注: 本例虽然A1:A2是用了数组对多单元格求和,但sumproduct本身就是可以对"区域"进行处理,所以不需要用数组公式结束, 直接回车sumproduct的结果就是想要的结果。

回答2:

如果数字的后面只有一个字(元)数字只有两位,
假如你的内容在A1里,那么你在B列,C列,用函数提取出字符就行了。
在B1格里输入=right(a1,3),在C1格里输入=left(b1,2)就行了,
如果数字位数及数字后面除了元还有其它的字符,请补充。
先试下

同时也跟各位学习下了
高手哈
lxlzmh2002
晴天飘雪之扬州
有空请教你们,能同意不?

回答3:

把数字提取出来:先做一个辅助列B列,在B1中输入数组公式
=IF(ISERROR(MATCH(0,0*MID(A1,ROW(INDIRECT("$1:$"&LEN(A1))),1),)),"",LOOKUP(9E+307,--MID(A1,MATCH(0,0*MID(A1,ROW(INDIRECT("$1:$"&LEN(A1))),1),),ROW(INDIRECT("$1:$"&LEN(A1)))))),Ctrl+Shift+Enter结束,再求和。

回答4:

文本格式的数字是不会进行运算的,所以这个是不可能的