SSブログ

自分用覚え

AccessはRoundUp関数が使えないので ある桁数(今回は万単位)に繰り上げて丸めたいときに不便。
小数点以下を繰り上げるとか四捨五入で処理する方法はNet検索ですぐに見つかったけれど
たとえば、残高(ゼロより多いが条件)が1以上1万までだったら1万。
1万より多くて2万までだったら2万と丸めたいとした場合に
IIFとIntの力技で丸めてみました。

101013-2.jpg
こんな感じのデータがあるとして
残高数を1万単位に繰り上げて丸めたいとします。








クエリで『1万単位で丸め(単位:万)』という項目のある新しいテーブルを作るようにしてみました。
101013-1.jpg

『残高数』を1万単位で丸める力技の式
IIf(Len([残高数])>4,Int(([残高数]+9999)/10000)*10000,10000)

で、さらに10000で割ることで表示を【単位:万】に・・・(ゼロが沢山並んでいると見づらいんで)
IIf(Len([残高数])>4,Int(([残高数]+9999)/10000)*10000,10000)/10000

クエリを実行して作られたテーブルはこちら
101013-3.jpg

残高数がゼロじゃないことが条件だけれど ゼロがあるのなら
IIFでさらに囲んで ゼロだったらゼロの条件を追加記入が必要です。

IIF([残高数]=0,"0", IIf(Len([残高数])>4,Int(([残高数]+9999)/10000)*10000,10000)/10000)
nice!(0)  トラックバック(0) 
共通テーマ:資格・学び

nice! 0

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。