我在查询末尾有两个自定义列,名为“Total”和“GST”,“Total”列汇总了列“Storage”,“PltHire”,“Admin”,“InActivity”,“OutActivity”,“Add Activity” “,”运费“,”包装“和”其他“。虽然“GST”列是“总计”列的10%,但我在幂查询中使用了舍入函数并将其设置为2位小数,并且由于某种原因“GST”列未正确舍入。如果你查看图像,它会显示突出显示的行有154.25美元,其功率查询已经四舍五入到15.42美元,这实际上应该是15.43美元。我不确定我是否已经做了我需要的任何事情,所以如果有人能帮助我那将是伟大的,如果你需要更多的信息,请让我知道。
注意 - 我发现奇怪的是,当我为总列创建另一个自定义列时添加了总和gst([total] * 1.1而不是[total] * 0.1),该列能够正确舍入?
谢谢!
我试图通过使用以下内容来更改M代码,但无济于事。
四舍五入没有统一的共识。实际上,舍入到偶数(Power Query默认值)比舍入更少偏差。幸运的是,Power Query Number.Round
function允许使用不同的舍入样式作为可选的第3个参数。
您可能需要Number.Round([Custom],2,0)
或等效的Number.Round([Custom],2,RoundingMode.Up)
,但您也有以下选项:
RoundingMode.Down
(或1
)RoundingMode.AwayFromZero
(或2
)RoundingMode.TowardsZero
(或3
)RoundingMode.ToEven
(或4
)[默认]Ken Puls discussed于2014年9月回归:
我不认为它已被修复,因此Ken的文章仍然有效。
如果要匹配Exel处理舍入的方式,您将需要使用RoundingMode.AwayFromZero:
=Number.Round([Value],2,RoundingMode.AwayFromZero)