2012-05-08 3 views
0

숫자를 추가하고 결과를 반환 할 때 사용자 입력을 UI에 추가합니다. 입력은 통화이므로 두 자리 수를 반올림하지 않아야합니다.반올림하지 않고 사용자 입력 추가 (Google Apps Script)

function ceiling2(number) { 
    var ceiling2; 
    return ceiling2 = Math.ceil(number*100)/100; 
} 
//Totals 
function lD23Total (e){ 
    var app = UiApp.getActiveApplication(); 
    var tB1v = parseInt(e.parameter.TextBox1); 
    var tB9v = parseInt(e.parameter.TextBox9); 
    var tB17v = parseInt(e.parameter.TextBox17); 
    var tB25v = parseInt(e.parameter.TextBox25); 
    var tB33v = parseInt(e.parameter.TextBox33); 
    var tB41v = parseInt(e.parameter.TextBox41); 
    var tB49v = parseInt(e.parameter.TextBox49); 
    var lD23 = app.getElementById("LabelD23").setStyleAttribute('fontWeight','bold'); 
    var lD23T = tB1v + tB9v + tB17v + tB25v + tB33v + tB41v + tB49v; 
    lD23.setText("$ " + ceiling2(lD23T)); 

    var app = UiApp.getActiveApplication(); 
    app.close(); 
    return app; 
} 

가 현재는 둥근 수를 반환 : 여기

내 코드의 예입니다.

제공하신 제안에 감사드립니다.

답변

0

함수에서는 parseInt() 소수점 이하의 값을 삭제, 값을 정수로 변환된다. parseFloat()를 대신 사용하십시오.

0

나는 당신의 기능을 사용하면에서는 parseInt()를 제거하고 교체하는 경우 ... 잘 생각 중 에릭 또는 다음 번호()가 작동합니다 ... 그렇지 않은 경우 에 의해 제안에서는 parseFloat()와 문제가 숫자가 기록되는 방식에서 올 수 있습니다.

26,4567을 사용했지만 26.4567을 쉼표 대신 분리 기호로 사용해야합니다.

알려 주시면 감사하겠습니다. 관련, 서지

또는 당신은 당신의 기능에 보내기 전에 이것을 사용할 수 있습니다 : 두 경우 모두에서 작동합니다

var newnumber=Number(number.toString().replace(",","."));// convert to string, replace comma with dot and set as number again. 

와 함수

관련 문제