二维码 购物车
部落窝在线教育欢迎您!

用函数求文本中所有数字的和

 

作者:小窝来源:部落窝教育发布时间:2023-11-05 09:30:25点击:796

分享到:
0
收藏    收藏人气:0人
版权说明: 原创作品,禁止转载。
编按:

柳之老师曾讲过带文字的数字求和。这里小窝再为大家介绍两种分别运用工作表函数和PQ的M函数对文本中的数字进行求和的方法。

 

下方是报销表格,报销的数字金额与项目文字都写在同一单元格中,如何求和?

 

 

柳之老师的教程曾讲过这个问题,有伙伴问能否给出用函数求和的方法。

今天小窝就分享两个函数方法:Excel工作表函数法和PQM函数法。

一、Excel工作表函数法

下方是数组公式,非2021等新版本,需要按三键完成输入。

=SUMPRODUCT(IFERROR(--MID(SUBSTITUTE(TRIM(CONCAT(IF(IFERROR(FIND(MID(B2,ROW($1:$50),1),"9876543210."),0)=0," ",MID(B2,ROW($1:$50),1))))," ",REPT(" ",99)),COLUMN(A1:D1)*99-98,99),0)*1)

 

 

说明:这是个套路公式,适合求文本中"9876543210."组成的任何数字的和。如果感觉太难,可以收藏,后续使用只需把“B2”单元格换成实际的单元格,根据数字最大个数修改COLUMN(A1:D1)中的D即可。

二、M函数法

建立查询将数据连接到PQ中。

 

 

当前日期数据自动变成了日期/时间格式,可以修改其编辑栏中的公式,让其不变。

 

 

单击编辑栏上“fx”新增公式,输入如下M函数公式创建求和列,完成求和。

= Table.AddColumn(更改的类型, "求和", each List.Sum(List.Transform(Text.SplitAny([报销明细],Text.Remove([报销明细],{"0".."9","."})),Number.From)))

 

 

最后关闭并上载即可。

 

 

说明:

Text.Remove([报销明细],{"0".."9","."}),删除文本中09的数字和小数点。

 

 

Text.SplitAny([报销明细],),以删除数字和小数点后的每个文字和符号作为分隔符拆分文本,留下空行和数字。

 

 

List.Transform(,Number.From),将拆分后的文本数据转成数字。Number.From,数字格式。

List.Sum(),求数字的和。

Table.AddColumn(更改的类型, "求和", each ),新建名为“求和”的列,列值为④中得到的每个和。

 

关于用函数方法求文本中数字和就介绍到这里。

多多点赞多多分享~~周末愉快!!

 

本文配套的练习课件请加入QQ群:902294808下载。

Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择

扫下方二维码关注公众号,可随时随地学习Excel

IMG_256

相关推荐:

带文字的数字如何求和

按颜色求和的4种方法

WPS新增数据后求和值不自动更新的解决方法

SUMIF函数用法7

版权申明:

本文作者小窝;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。