どのように最も近い整数値にI常にラウンドアップ10進数値できますか?

StackOverflow https://stackoverflow.com/questions/2559629

  •  23-09-2019
  •  | 
  •  

質問

私はフィールドに次のコードを持っているレポートでは、

=Sum([PartQty]*[ModuleQty])

例の結果は2.12.6あります。私は必要なの3の値にラウンドまでのこれらの値のためです。どのように私は私の現在のラウンド式の結果次第に常に私のフィールドコードを変更することができますか?

役に立ちましたか?

解決

あなたが行うことができます。

=Int(Sum([PartQty]*[ModuleQty]))+1

私は思います。それは、(2)の合計ののInt一部を取得し、あなたがこのようにもう少し賢いする必要があります。1.を追加し、おそらく合計は正確に2、あなたが望むものはおそらくされていない場合でも、あなたに3を与えるだろう。

それをテストしたが、これらの線に沿って何かがうまくいくかもしれません(アクセス構文は素晴らしいことではありませんが、あなたは右のアイデアを与える必要があります):

Iif(Sum([PartQty]*[ModuleQty])-Int(Sum([PartQty]*[ModuleQty]))=0,
     Sum([PartQty]*[ModuleQty]),
     Int(Sum([PartQty]*[ModuleQty]))+1)

他のヒント

これは私が非常に長い時間前に学んだ古いアクセストリックであり、それは、アクセスハンドル小数、負の数の方法を利用します。これを試してください:

-Int(-[DecimalValue])

それは奇妙だが、それは常にあなたの数字のラウンドアップ最も近い整数に。

テストこの:     ラウンド(yournumber + 0.5、0)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top