• ベストアンサー

Excel関数CEILINGとFLOORの使い方

EXCEL関数の質問です。 80226 18351 11583 447 等の数値があり、一桁目が6など5より大きい場合は80226が80230になり 18351など5より小さい場合は18350となるようにしたいです。 同じように11583は11580、447は450となるように。 数値が混在していなければCEILINGとFLOORで計算できるのですが この二つを混在させた場合の計算式がわかりません。 この二つの式を使用しないでも出来ればなんでも結構です。 よろしくお願いします!

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

次の方法は如何でしょうか。 条件が曖昧でしたので四捨五入としています。 =ROUND(セル,-1)

kinoco8
質問者

お礼

早速の回答どうもありがとうございました! 大変助かりました。 発想をもっと柔軟にしないといけませんね。。

その他の回答 (5)

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.6

スマートではありませんが、下記の数式はいかがでしょう。 =IF(VALUE(LEFT(A1,1))>=5,ROUNDUP(A1,-1),ROUNDDOWN(A1,-1))

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.5

こんにちは。 回答は出ていますので、おせっかいながら参考までに・・・ >数値が混在していなければCEILINGとFLOORで計算できるのですが よくお考えになれば、↑を利用して算出が可能です。しかも、意外と簡単に! 組込み関数は比較的使用頻度が高いと想定されるものを、あらかじめ用意しているという、いってみれば「お便利機能」みたいなものですので、そっくりそのままがないと計算不可能というわけでもありません。思っていることを実現したいならば、自分がやろうとしていることをよく観察してみることも重要ですし、それによって、また、「応用の利く案」も出せますし、自力解決への道が開けるともいうものです。 例えば、FLOORをご存知ですので  =FLOOR( セル値 + 5 , 10) でもお望みの結果が得られませんでしょうか? (セルの値が負数の場合、上記はエラーになりますが、round関数を用いても負の値の場合は、意図と少し違う値になる可能性があります。) もちろん、今回はround関数が適していると思われますが、たとえそれがなかったとしても、可能な場合もあるということをお忘れなく。 頭の体操のために、『CEILING関数で同じことを実現するには?』というのに挑戦して見ても面白いかも。 (少々難しいです。そのままだと、105などの5が繰り上がってくれないので・・・)

kinoco8
質問者

お礼

早速の回答どうもありがとうございました! 大変助かりました。 発想をもっと柔軟にしないといけませんね。。 おっしゃることも大変参考になりました。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.4

5未満切捨て、5以上切上げなら =ROUND(A1,-1) 5以下切捨て、5を超えたら切上げなら =FLOOR((CEILING(A1,5),10)

kinoco8
質問者

お礼

早速の回答どうもありがとうございました! 大変助かりました。 発想をもっと柔軟にしないといけませんね。。

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.3

四捨五入でいいのでは =round(80226,-1) 80226をセル番地に置き換える round関数の使い方 http://exinfo.biz/func/func_round.shtml

kinoco8
質問者

お礼

早速の回答どうもありがとうございました! 大変助かりました。 発想をもっと柔軟にしないといけませんね。。

  • newbranch
  • ベストアンサー率30% (319/1053)
回答No.1

この場合にはROUND関数で適当です。 ROUND関数は、四捨五入する関数ですので、末尾が5より 大きいものは切り上げ、小さいものは切り捨てになります。 末尾の桁だけではなく、どの桁でも四捨五入が可能です。

kinoco8
質問者

お礼

早速の回答どうもありがとうございました! 大変助かりました。 発想をもっと柔軟にしないといけませんね。。

関連するQ&A

  • マクロでのCeiling,floor

    いつもお世話になっております。 Excel関数のCeiling,Floorはマクロで組む場合 どんな関数を使用すれば宜しいのでしょうか? 又、あるExcel関数に対してマクロではどのような 組み方になるのかを見つけ出すコツのようなことが ありましたら、教えていただけないでしょうか。 宜しくお願いします。

  • EXCEL関数をORACLEで実現したい

    oracle 9iの環境でEXCLEの下記の関数と同じことを実施したいのですが、 実現方法がわからず困っています。 どなたか、ご教授いただけると幸いです。 1.MROUND関数 EXCEL関数の書式:MROUND(数値,倍数) ・数値:丸める数値を指定 ・倍数:切り上げまたは切り捨てて丸められた数値が、 その倍数となるような数値を指定します。 つまり、倍数は、切り上げまたは切り捨てられた数値の 約数になります。 ・解説:数値を倍数で割った剰余が倍数の半分以上である場合は、 0から遠い方の値に丸められます。 ・EXCEL関数の例: =MROUND(10,3) = 9(10 を 3 の倍数になるように丸めます) 2.CEILING関数 EXCEL関数の書式:CEILING(数値,基準値)    ・数値 :丸める数値を指定    ・基準値:倍数の基準となる数値を指定します。 ・解説 :数値の符号に関係なく、切り上げられた値の絶対値は、     数値より大きくなります。数値が既に基準値の倍数     になっている場合は、その値が返されます。 ・EXCEL関数の例: =CEILING(2.5, 1) =3(2.5 を基準値である 1 の倍数に切り上げます )

  • Excel関数

    Excel2010を使用しています。 A~E列 及び H~K列の1,000行目くらいまで、1ケタから5ケタの数字を入力しています。 重複した数字がないか確認したいのですが、適した関数はありますか? (重複していた場合、指定したセルに「重複」と出るような関数など) セルは空欄の場合もあります。 ご教示いただければ幸いです。よろしくお願いします。

  • Excel関数で数値のみ取り出したい

    Excelの関数について教えてください。 A列には単位付の数値が入っています。数値の桁数は決まっていませんが、3桁区切り、小数も含まれて居ます。単位はkm2とか、m3、L、Kw、gとかの3文字以内です。 この列から、B列に「数値のみ取り出したい」場合の関数式を教えてください。

  • FLOOR関数について

    FLOOR関数を使って勤務時間を計算しているのですが うまく出来ません。 条件) 10分単位で切り捨てする。 例1) 出社時間:20:00 退社時間:22:00 FLOOR("22:00"-"20:00","0:10") 例2) 出社時間:21:00 退社時間:22:00 FLOOR("22:00"-"21:00","0:10") 例3) 出社時間:21:00 退社時間:22:05 FLOOR("22:05"-"21:00","0:10") 出力結果 例1)2時間 例2)50分 例3)1時間 となります。 いろんな時間で試してみましたが、手計算では1時間になる時だけ 50分と出力されます。 例2)の場合、1時間と出力しないのはなぜでしょうか? [補足] 実際はセルを参照して計算しています

  • EXCEL関数(ROUNDDOWN)について

    基礎的なことで申し訳ありませんが、EXCEL関数(ROUNDDOWN)について教えて下さい。 現在、EXCEL関数(ROUNDDOWN)について求めている答えが返ってこなくて困っています。 なにか手順を誤っているのでしょうか。  例 : 35,000÷30×12 = 13,999.99999999・・・・ という結果になりますが、      欲しい結果は、「13,999」です。ROUNDDOWN関数を使って求めようとしているのですが、      =ROUNDDOWN(35,000/30*12,0) = 14,000 と切り上がった数値が返ってきます。 また計算結果を文字にして他のセルに貼り付けても「14,000」という数値が表示されます。 また計算結果に少数点以下を表示させても「14,000.0000000」と表示されます。 私のPCがおかしいかと思い他のPCでも同様の処理を行ってみましたが、結果は同じです。 どこの手順が誤っているか、分かりません。どなたかご教授願います。

  • FLOOR-CEILINGの実働時間をまるめたい

    既出でしたら申し訳ございません。 この度、簡単なタイムシート勤怠表を作成することとなりました。 出勤時間は、繰上げで退出時間は、繰り下げです。 退出時間-出勤時間で実働時間を割り出すのですが画像通り別途セルで指定をし30分でまるめることは、出来ました。 しかしながら計算方法としては、実働時間の部分だけ30分ではなく小数を0.5単位でまるめ時間を表示したいいのです。 数式は、=FLOOR(E10,$M$8)-CEILING(D10,$M$8)と入れています。 更に出勤時間のみ入力するとシャープが出るのも不恰好なので出勤時間、退勤時間を入力するまで空白に表示される様にしたいです。 計算式自体が誤っているのでしょうか。 お手すきの時でもご回答頂けると嬉しく存じます。 宜しくお願い致します。

  • Excel関数について教えてください(>_<;)

    Excel関数について教えてください(>_<;) ・もし、45と記入したら〇+△の計算をし、もし、25と記入したら〇+□と計算しなさい。 という命令をしたいのですが、IF関数を使うのかもしくは他の計算式でできるのか計算式を教えてください! あと…行指定の絶対値($)ってどこに入れるのかわかりません(@_@;) 5行ほど同じ計算式を入れたいのですが。。。 助けてください!よろしくお願いします(o*。_。)oペコッ 質問文章うまく書けてなくてすみません。。

  • Excel関数についての質問です。

    Excel関数についての質問です。 エクセルのバージョンは2007を使用しております。 A1 A2 A3 A4 A5 という並びの表で、A5にはA3-A4の答えを表示させたく、 つまり関数 =A3-A4と入力しているのですが、 A3のセルに空白のセルがあった場合には、 A2のセルを使って =A2-A4 更にA2のセルが空白の場合には、 A1のセルを使って =A1-A4 という風に関数を設定したいと考えています。 「参照先のセルが空白の場合に、ほかのセルの数値を使って計算する」 ということだと思うのですが、どのような関数を入力すれば良いか、 ご教授いただけるとありがたいです。 IFERRORを使って設定すれば良いのかと考えたのですが、 =IFERROR(A3-A4,A4-A2) となり、一応答えが出るようなのですが、 その場合、更にA2が空白だった場合にA1を使って計算するようにするにはどうすればよいか?という点がわからず、質問させていただきました。 ご回答、お待ちしております。よろしくお願いいたします。

  • EXCELの関数で?

    ここの他の質問をみて、、 =CEILING(数字,基準値)とか=FLOOR(数字,基準値) という関数があることを初めて知ったのですが、 EXCELのヘルプを見ても、載っていないようなのです。 このように、ヘルプに載っていない関数って 他にもあるのでしょうか?

専門家に質問してみよう