1

こんにちは、誰かが助けてくれることを願っています。

Excelスプレッドシートに次の式があります。T40 と AB40の差を計算し、負の値を返す場合は、AB40 - T40を再計算して正の値を返します。

=IF(T40 > AB40, + T40 - AB40, AB40 - T40)

スプレッドシートを PDF ドキュメントにインポートしましたが、上記と一致する同等の Java スクリプトが見つかりません。

誰でも助けてもらえますか、私は今必死で、情報が緊急に必要です。

4

3 に答える 3

1

次のようにすれば、if ステートメントは必要ありません。

Math.abs(T40-AB40)

これを明確にするために、数学演算の絶対値を返します。

Math.abs(10 - 2) //returns 8

Math.abs(2 - 10) //returns 8 
于 2012-12-04T13:33:57.313 に答える
0

別の応答が示すように if で実行できますが、式として扱いたい場合は、次のようにすることができます。

T40 > AB40 ? T40-AB40 : AB40-T40;

Javascript の場合:

cond ? ifTrue : ifFalse

すべてを式として扱い、式の一部にしたり、変数に代入したり、関数のパラメーター リストに入れたりすることができる if ステートメントを提示する別の方法です。if とは異なります。したがって、次のようなことを行うことは完全に合法です。

alert( cond ? ifTrue : ifFalse );
var x = cond ? ifTrue : ifFalse;

などですが、if ブロックではできません。もちろん、あいまいになる可能性がある場合は、括弧内に式を含めてください(例:より大きな式の一部であるなど...)。

これは、Excel の IF の意味を保持することに近いと思います。

于 2012-12-04T13:32:09.323 に答える
0

PDFのjavascriptの詳細に精通していない場合でも、次のようなものが機能するはずです。

if(T40>AB40){
    return T40-AB40;
}else{
    return AB40-T40;
}

または、user1161318 が提案するような三項演算子を使用します。

于 2012-12-04T13:28:51.850 に答える