2012-05-08 10 views
0

数字を追加して結果を返すときにユーザー入力をUIに追加しています。入力は通貨なので、2桁の小数点以下を切り捨てる必要があります。ここで丸めなしでユーザー入力を追加する(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. 

とあなたの関数

関連する問題