• 締切済み

ラウンドダウン関数を使わずに切捨て

エクセルで金額の計算をよくするのですが、金額ですので三桁区切りの円未満は表示しないようにしています。 このときに、どのセルについても必ず円未満は切捨ての計算結果が欲しいので、ラウンドダウン関数を使用せずに常に切捨ての計算結果を得る方法はないものでしょうか。もともと理論関数などをたくさん用いていて、一つのセルにたくさんの内容がある上に、さらにラウンドダウンの関数を織り込むとさすがにまいっています。 エクセルでは計算結果が四捨五入になっているのは分かっているのですが、何か別の良い方法があるのではないかと探しています。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.5

今回の場合、サンプルを見せられないままですと、やはり、TRUNC() で括ってしまったほうが早いと思います。負の数字が存在する場合は、INT()は、使わないほうがよいと思います。

shunshun-dash
質問者

お礼

ありがとう御座います。

  • 134
  • ベストアンサー率27% (162/600)
回答No.4

rounddown では、桁数も入れなければいけませんけど、intなら、カッコでくくるだけでいいので、よりわかりやすいかもしれません。 あるいは、不可視領域に長いセンテンスの関数を入れて、目的の領域に切り捨てる関数を使って、間接的に表示させる という方法が ベターのように感じました。

shunshun-dash
質問者

お礼

ありがとう御座います

  • macchan1
  • ベストアンサー率38% (52/136)
回答No.3

最も簡単な対応は元の数式から0.5を引くことです。 もちろんこの場合は実際の値が切り捨てられているわけではありませんのでその値を計算に利用する場合には注意してください。 ちなみに#1のboy_boyの回答にある「例えばセルの表示は「154」数式バーでは 「154.54」になっていた場合でも」とはならないと思うのですが・・・

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

失礼かもしれませんが、#1の 「表示桁数で計算する」は、四捨五入であって、切り捨てではありません。金額の計算には向かないと思います。 私が考える限りでは、例えば、せいぜい、別のシートで計算させる、とかぐらいで、たぶん、ふつうの一般操作の方法では、解決策は見当たらないと思います。 ワークシートが重いときは、マクロに頼るしかありませんが、ただ、「理論関数(論理関数かな?)」のネストを繰り返しても、それだけでは問題は発生しません。「まいってしまう」とは、ネストの制限を越える、とかいうことでしょうか? ユーザー定義関数などで、式自体をまとめてしまうこともできます。(ただし、書き方によっては、計算がかなり遅くなります。)しかし、その前に、一体、どのような式を使ったら、そのようなことになるのか、興味があるところです。 以下のサイトを確認して、式を根本的に見直す必要があるかもしれません。 [XL] メモリを節約するワークシートの作成方法

参考URL:
http://support.microsoft.com/default.aspx?scid=http://www.microsoft.com/japan/support/kb/articles/401/7/04.asp
shunshun-dash
質問者

補足

質問の仕方が悪かったのかもしれません。 シートが重たくなるのではなく、こちらが関数を入力するときにかなりの長さの式になっている(数式バーで2行目にわる式になることがしばしば)ので、その上にいちいちラウンドダウン関数を追加するのにはこちらがまいってしまうという意味です。また、関数を組む途中でこちらの頭がヒートアップしているので、その上でラウンドダウンを追加しているとミスをしやすくなると言うこともあります。 ある切り捨てられたセルはまた次のセルに引用されると言う風に次々と連動していますので、各セルは表示上だけではなく実際の数値としても切り捨てられている必要があるというわけです。 そのために、例えば「ツール」→「オプション」の中で、「計算処理は必ず切り捨てる」というようなチェック項目があればよいなと期待していたところです。

  • boy_boy
  • ベストアンサー率55% (56/101)
回答No.1

正確な計算には向きませんが、 >金額ですので三桁区切りの円未満は表示しないようにしています。 にして居るので在れば、「ツール」⇒「オプション」 「計算方法」タブで「表示桁数で計算する」に チェックしてはいかがでしょう。 例えばセルの表示は「154」 数式バーでは 「154.54」になっていた場合でも このセルを対象に計算させる場合には「154」として 計算してくれます。

shunshun-dash
質問者

お礼

ありがとう御座います

関連するQ&A