WPS偷偷的优化了条件统计类函数,函数的计算结果将和EXCEL有区别!

会飞的鱼
会飞的鱼

KVP函数专家、创作者俱乐部成员

大家好久不见,一般情况下只有在WPS更新了新函数的时候我才会更新,这次也不例外,WPS又更新了,所以我也来更新了~

不过这次的更新有些特殊,这次没有新增函数,这次是优化升级了IF统计类函数,在正式内容开始之前,我们需要先了解一个知识点。

当表格中有超过15位长度的数字文本使用IF统计类函数计算时,如COUNTIFS、SUMIFS等函数,需要在统计条件连接(*)号,否则统计结果会出现错误。这是因为这些函数对数字文本的计算精确是15位,15位后的内容在统计时全部当0处理,当数据出现前15位相同,15位以后不同时,如果统计条件不连接(*)号,函数的统计结果就是错误的。这是一个历史问题,这么多年来一直靠打补丁来解决这个问题。

错误公式

=COUNTIFS(B:B,E3)

正确公式

=COUNTIFS(B:B,E4&“*”;)

我相信大多数的小伙伴都知道这个问题,但是也一定有一部分小伙伴是没有留意这个情况的。即使我自己知道有这个问题需要注意,但是在实际工作中,当数据量大的时候,特别是大部分的编号是字母加数字编号,在这其中夹杂些一些纯数字并且超过15位的编码,在使用IF统计类函数时,也会忘记连接(*)号,导致统计结果错误。

还有些更特殊的情况,当编码长度不同时,单纯的连接(*)也无法正确的统计。因为连接(*)号的原理是统计某个条件开头包含任意内容,如下面图。

错误公式

=COUNTIFS(B:B,E3)
=COUNTIFS(B:B,E4&"*")

正确公式

=SUM(N(B3:B8=E5))

WPS这次更新解决了IF统计类函数在统计超15位长文本导致错误的问题。

WPS公式正确

=COUNTIFS(B:B,E3)

涉及的IF统计类函数如下

本次更新还涉及DATEDIF函数,具体规则如下:

上图来自官方文档

https://365.kdocs.cn/l/csw0blMgSfS9
【WPS表格】函数计算差异说明

同时WPS为了兼容OFFICE新增加了两个选项,依次单击【文件】-【选项】-【重新计算】-【计算规则】分组。

1、新建文件默认规则,可以选择

【个别函数基于Excel优化】(默认项)

【完全兼容Excel】

2、本文件的计算规则

【(默认)】(默认项)

【个别函数基于Excel优化】

【完全兼容Excel】

三个选项的计算规则如下

通过默认的设置项可以发现

1、新建文件的时候默认使用的WPS升级优化后的计算规则。

2、如果打开Excel新建的文件或当前已有文件(使用12.1.0.24034 32位 或12.1.0.24031 64位)版本以前创建文件,默认还是使用Excel的计算规则。

我们也可以理解为,为了兼容office和历史版本的已经有文件,除了24034

版本以后新建的文件,打开现有表格里,无论是已有IF统计类函数还是新输入的IF统计类函数,都是按优化前(完全兼容Excel)的规则计算。

如果需要使用优化后的规则计算,需要到选项中设置 【本文件的计算规则 】为【个别函数基于Excel优化】才可以。

我是理解WPS的这两个新设置项的用意,尽量做到对已有文件和office用户的最小影响,但是既然已经有了差异,就一定会有影响。按当前的更新后的选项来看,新建文件时,默认是使用升级后的规则的。当用户在新版本创建的文件中使用了IF统计类函数,发这个文件被excel打开或低版本的wps打开就会导致相同的文件,不同版本的软件打开会有不同的计算结果。

如果你的文件需要发给office用户或低版本的wps用户使用,建议现在你马上打开WPS,把【新建文件默认规则】设置修改为【完全兼容Excel】,当此次升级没有发生过。。。

既然此次升级后和offIce已经有差异,为何不把参数支持数组的功能一起做了!@WPS官方

WPS版本如下

END

飞鱼 2025-12-15

辽宁省
浏览 475
收藏
5
分享
5 +1
3
+1
全部评论 3
 
1231393578237
学习
· 四川省
回复
 
恰同学少年
点赞学习
· 黑龙江省
回复
 
墨云轩
墨云轩

创作者俱乐部成员

学习了!
· 河北省
回复