Excel 2013数据透视表拒绝汇总相同的值 - 返回重复的结果。为什么?


0

我在Excel中构建一个简单的数据透视表时遇到了一个奇怪的问题。这是我的数据:我创建了一个简单的表格,其中col C包含A中的值除以B中的值。我已将公式包含在col D中,只是为了清楚。

在此输入图像描述

现在这是奇怪的事情 - 当我从Col C构建一个数据透视表时,我得到了数字6的两个版本:

在此输入图像描述

这太疯狂了!为什么Excel没有将数字6的两个“版本”聚合成一行?我做了一些进一步的测试:isnumber()为两个6都返回true,甚至等价测试(=' 1st 6 '=' 2nd 6 ')也返回true!为什么Excel无法在数据透视表中汇总这些相同的值?

我猜它与1.2 / 0.2返回浮点数有关,12/2返回一个整数(可能在python中发生),但Excel中没有任何内容可以告诉我我正在处理的数据类型。也许是一个舍入错误?如果两个6不相同,为什么我的等价测试返回真实?

如果我将两个6转换为整数,则数据透视表将返回预期结果。但是,我不相信我应该这样做,大多数用户也不会期望。这里发生了什么?预期的行为还是错误?


所以你已经得到了答案,它与舍入有关(可能是1.2 / 0.2 6.0..01,但是6当你用它进行任何计算时,它只是显示为并且也是四舍五入的。这是一个错误的边缘,但无论如何我认为我们不能提供这里有更多的信息,因为你的问题可以由微软真正回答。
MátéJuhász2016年

Answers:


1

如果使用INT函数将列C转换为整数,则数据透视表将按预期生成。这是一个浮点问题。

在此输入图像描述

在此输入图像描述


谢谢。令人困惑的是,Excel“掩盖了”一些舍入问题(这就是为什么当被问到一个6 =另一个时它返回TRUE的原因)。如果在电子表格中评估= INT(1.2 / 0.2),则会得到“6”。然后在立即窗口中尝试(?INT(1.2 / 0.2))并返回5.简而言之,Excel不会特别优雅地处理这个怪癖,并且它不会向用户提供有关正在发生的事情的任何线索。
JT_Edin 2016年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.