• ベストアンサー

エクセル 100円以上を切り上げて千円単位にしたい

こんばんは。 題名にあります通り、エクセル関数を使用して、100円以上を切りあげて千円単位で表示を したいです。 round,roundup,rounddownだけだと、上手に表示されない数字がでてきます。 例えば、11,063は11,000と表示したいのに、12,000となったりします。 32,100は33,000と表示。 どなたか教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • big_egg
  • ベストアンサー率44% (736/1648)
回答No.3

"=ROUNDUP(ROUNDDOWN(A1,-2),-3)"、とか... ※A1に元の数値が入っている前提 説明:(A1が11063の場合) ROUNDDOWN(A1,-2):ラウンドダウンで整数部下2桁を切り捨て=11000 ROUNDUP(ROUNDDOWN(A1,-2),-3):ラウンドアップで整数部下3桁を切り上げ=11000 説明:(A1が32100の場合) ROUNDDOWN(A1,-2):ラウンドダウンで整数部下2桁を切り捨て=32100 ROUNDUP(ROUNDDOWN(A1,-2),-3):ラウンドアップで整数部下3桁を切り上げ=33000 多分答えは同じでも複数の方法があると思うので、他に方の回答も参考にして下さい。

shi-tan2011
質問者

お礼

どうもありがとうございました。 早速やってみました。 応用力が足りませんで・・・。 またなにか質問した際はよろしくお願いします。

その他の回答 (4)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

 1000円未満の端数が、100未満の場合は切り捨てて、端数が100円以上の場合は切り上げれたいという事で宜しいでしょうか?  それでしたら、例えば、元の金額が、A1セルに存在しているとした場合には、ROUNDUP関数とROUNDDOWN関数を組み合わせて、次の様な関数とすれば良いと思います。 =ROUNDUP(ROUNDDOWN(A1,-2),-3)

shi-tan2011
質問者

お礼

どうもありがとうございました。 教えてもらうと、「あっそうか」と気が付きますが 応用力が足りないみたいでまったく考え付きませんでした。 また何か質問した際はよろしくお願いします。

  • ura03
  • ベストアンサー率39% (150/382)
回答No.4

色々な方法があると思いますが、要は1回百円以下を切り捨てて千円単位に切り上げたら良いのですよね。 自分だったら下記数式にしますね。 =Ceiling(Int(A1/100)*100,1000) ※A1に元の値があると仮定しています。 Int(A1/100)*100で100円以下の切り捨て。 Ceiling(※※,1000)で1000円単位に切り上げ。 ,1000を,500にすれば500円単位にもできます。

shi-tan2011
質問者

お礼

こういったやり方もあるのですね。 どうもありがとうございました。

回答No.2

>例えば、11,063は11,000と表示したいのに、12,000となったりします。 >32,100は33,000と表示。 11,063を11,000と表示したいんですよね?これは「切り上げ」ではなく「切り下げ」ですが? 「切り上げ」と、「切り下げ」を取り違えておられませんか? 切り上げにはroundup関数、切り下げにはrounddown関数を使用します。 1000円単位での表示にしたい場合は、以下の記述になります。 切り上げの場合 roundup(11,063,-3) 計算結果 12,000 切り下げの場合 rounddown(11,063,-3) 計算結果 11,000 「-3」は1の位を「0」としたときの「切り上げした後の桁数の位置」になります。 (小数点方向が+、小数点より上はーで表記) たとえば、1,234.567という数字があった場合、 数字           1, 2 3 4.5 6 7 切り上げ(切り下げ)桁 -3 -2 -1 0 1 2 3 例 roundup(1,234.567,-2) = 1,300.000 roundup(1,234.567,-3) = 2,000.000 roundup(1,234.567,1) = 1,234.600 以上、ご参考まで。

shi-tan2011
質問者

お礼

今後は回答される方に質問の内容がわかるように もっと具体的に書くようにします。 どうもありがとうございました。

noname#171966
noname#171966
回答No.1

質問の意図が読み取れているか自信が無いですが。 32100は33000の表示で正しいんですよね? A1に処理したい数字を入れてあるとして、 =INT(A1/1000)*1000+IF(MOD(A1,1000)>=100,1000,0) ですかね。

shi-tan2011
質問者

お礼

わかりにくい文面ですみません。 ご回答どうもありがとうございました。 =INTやMODは使ったことがないのですが、どういった内容のものか 調べて今後使ってみたいと思います。 ありがとございました。