excel - Excel CountIF函数中的BUG

标签 excel formula countif

我在使用 Excel 中的 CountIf 函数时遇到问题。

=COUNTIF(A:A,A2)

A 列包含以下项目:

0107791489614255200011140926107503100513

0107791489614255200011140926107503100457

0107791489614255200011140926107503100518

0107791489614255200011140926107503100503

0107791489614255200011140926107503100519

0107791489614255200011140926107503100444

0107791489614255200011140926107503100521

0107791489614255200011140926107503100438

0107791489614255200011140926107503100449

0107791489614255200011140926107503100443

0107791489614255200011140926107503100501

0107791489614255200011140926107503100455

即使这些字符串集实际上并不相同,但公式的结果为 12。它将这些字符串视为相似字符串,我认为这与其字符串长度有关?

大家觉得怎么样?我感谢您的帮助。

最佳答案

+1,好问题。并不是真正的错误,而是一个功能!

这是由于 Excel 隐式地将输入转换为其内部数字类型并在此过程中丢失了精度。 Excel 的内部数值类型是 IEEE 浮点 double 。 (尽管它在格式化和错误传播方面做得很聪明,所以它似乎得到了 1/3 + 1/3 + 1/3 等正确的总和)。

由于它们非常相似,所以比较起来都是平等的。

一种补救措施是在每个字符串前添加 ' (单引号),这将阻止转换为数字类型。然后 COUNTIF 值返回 1。(至少在我的 Excel 版本;2013 中是这样)。

关于excel - Excel CountIF函数中的BUG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26882336/

相关文章:

regex - 谷歌表格,计算全部大写且具有一定长度的单词

php - 如何计算百分比

excel-formula - 如何在日期范围内使用 COUNTIF - 只计算一次重复

ruby roo 从解析中删除列

python - 读取大型 excel 表(猜测大小)

regex - 带子字符串的 Excel VBA 自动过滤器

Excel - 使用公式引用其他工作表上的值

arrays - 循环遍历具有多个 IF AND 并将数组作为值的行

python - python pandas中是否有countifs函数

excel - Flume 加载 csv 文件优于 hdfs 接收器