我正在尝试将此特定公式从Excel电子表格转换为Javascript
ROUND(-E10*(E21-E11)*E13/100,-1)
这就是我现在在Javascript中的内容
Math.round(-$scope.E10 * ($scope.E21 - $scope.E11 ) * $scope.E13 / 100);
这给了我一个不同的值,问题是Excel汇总数字的方式,因为Excel公式末尾的,-1
我不明白,在任何excel中找不到它手册。
有人可以通过解释Excel圆函数中的,-1
实际执行的操作来帮助我吗?
我在计算过程中使用的值是
E10 = 11000
E11 = 5.2
E13 = 1.40
E21 = 4.8
我的Javascript和Excel工作表中的值完全相同。 Excel中的结果为60,而我的Javascript返回61.如果我将,-1
更改为,1
,则Excel中的计算与Javascript中的计算相匹配,但我需要执行相反操作并将我的Javascript与Excel中。
答案 0 :(得分:1)
第二个参数(在您的示例中为-1)指定ROUND函数在近似值上使用多少位数。
在js中,Excel回合看起来像这样:
function excelRound(val, num) {
var coef = Math.pow(10, num);
return (Math.round(val * coef))/coef
}
excelRound(-$scope.E10 * ($scope.E21 - $scope.E11 ) * $scope.E13 / 100, -1);
答案 1 :(得分:0)
我认为http://office.microsoft.com/en-001/excel-help/round-function-HP010342858.aspx可以帮助您回答问题。
ROUND(number, num_digits)