• ベストアンサー

エクセル関数の四捨五入の方法教えてください。

いつもお世話になります。 エクセルで A列にある数値 45:30→45:30 45:45→46:00 5:15→5:00 36:15→36:00 要するに 29分以下は切捨て31分以上は切り上げにしたいのです。 過去の質問も捜したのですが、見つからなかったので、 ご存知の方教えてください。 よろしくお願いします。

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

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

こんにちは。 ふたつの式を考えてみました。 時々、ここで出る質問だと思います。 =CEILING(A1-"0:29"*1,"0:30"*1) または、 =FLOOR(A1+"0:01"*1,"0:30"*1) 解が出たら、書式は直してくださいね。

jidai
質問者

お礼

早々のご回答ありがとうございます。 教えていただいた方法で入力しましたが、 45.45は 45.4375 になり 36.15は 36.14583 と出てしまいました。 どこが間違っているのでしょうか? 当方 超初心者なので、わかりません。 もしよろしければまた教えていただければ嬉しいですが、、 お願いしたします。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (7)

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

こんばんは。 #1の回答者です。 >45.45は 45.4375 になり >36.15は 36.14583 と出てしまいました。 >どこが間違っているのでしょうか? 確認できました。 >当方 超初心者なので、わかりません。 私は、それはしょうがないと思います。その「お礼」につけられた、このレベルの内容を読みきれなかった私も、未だ勉強が足りませんからね。 ただ、ご質問者さんの掲示板デビューは、少し早いようです。身近に聞けないから聞いているのでしょうけれども、書籍(例:アスキー社のZ式や学研)などの、図入りで勉強されると良いと思います。このレベルでしたら、1週間もあれば十分です。 まず、 時間を入れるときは、 45.45は、45:45 (コロン「:」を使用してください) コンマ「.」を使うとややこしくなります。理由は、時間は10進法ではありませんから、そのままではできません。これが基本です。わざわざ、数字だけを拾って、時間値に変えるという質問を否定するわけではありませんが、質問の趣旨が変わってしまいます。 そして、書式のところは、回答の#3か#4 にしてください。そうしないと、45:45:00 などとなってしまいます。社員の労働時間の計算などは、#4さんの [h]:mm か、[hh]:mm のほうがよいです。それで、もう一度、#1 から、試してみてください。

jidai
質問者

お礼

何回も見放さずにご回答ありがとうございます。 このたび給与ソフト入れ替えにつき、勤怠データを給与ソフトに読み込ませたいと、あれこれとない知恵を絞っておりました。 質問の聞き方も間違っていたと思います。 ご迷惑おかけいたしました。 おかげさまで、答えがでました。(^0^) どうもありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
回答No.7

ANo.5です。 すいません。 質問を読み落としていました。 ○○:30 の場合はそのまま表示って事ですよね。 =VALUE(IF(MINUTE(A1)=30,A1,IF(MINUTE(A1)<30,TEXT(A1,"[h]"),TEXT(A1,"[h]")+1))&":00") と、こんな感じで;

全文を見る
すると、全ての回答が全文表示されます。
noname#204879
noname#204879
回答No.6

=MROUND(A1-"0:1","0:30") 「超初心者」の宣言は不要です。書かれた内容から判断できますから。

jidai
質問者

お礼

ご回答ありがとうございます。 >「超初心者」の宣言は不要です。書かれた内容から判断できますから。 そうですか~。やはりわかりますか。(笑い) 自分の勉強不足に、皆様に教えていただいたことができません。 もう一度最初からやり直してみます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
回答No.5

私自身で他の方の回答を試してみたのですが 設定が悪いのか、勉強不足の為、うまく行かず、 自分なりに別例を考えてみました。 =VALUE(IF(MINUTE(N78)<30,TEXT(N78,"[h]"),TEXT(N78,"[h]")+1)&":00") 回答を出すだけなら頭の”=VALUE()”は必要ないのですが、 回答を使って時間計算を行う場合は頭に”=VALUE()”を付けて、 他の方と同様に、 セルの書式設定を、セルの書式設定→表示形式より ユーザ定義で[h]:mmを設定して下さい。

jidai
質問者

お礼

ご回答ありがとうございます。 朝からず~としているのですが、どうもうまくいきません。 もともとの数値も分から時間にしたりしているので、 そのせいかもしれません。 頭が痛くなってきました。(;-;) 自分の勉強不足に、皆様に教えていただいたことができません。 もう一度最初からやり直してみます。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

NO2です。 時刻入力は、hh:mmとして下さい。 又、セルの書式設定は、セルの書式設定→表示形式タブのユーザ定義で[h]:mmを設定して下さい。

全文を見る
すると、全ての回答が全文表示されます。
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

#1の回答者です。 #解が出たら、書式は直してくださいね。 と書いたとおりですが、書式-セル-表示形式-ユーザー定義 「h:mm」 としてください。または、該当する場所に、書式コピーします。

全文を見る
すると、全ての回答が全文表示されます。
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

次の数式をお試し下さい。 =IF(MINUTE(A1)>30,CEILING(A1,"01:00"),FLOOR(A1,"00:30"))

jidai
質問者

お礼

早々のご回答ありがとうございます。 なぜか、58.45 が 58.45833 となってしまいます。 質問の仕方が悪いのでしょうか? 入力方法が間違っているのでしょうか? こちら、超初心者なので、、、 もしよろしければまた教えてください。 よろしく御願いいたします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • またまた、少し、違った四捨五入なんですが・・

    皆様、おせわになります。 さて、 A1に、 77 と入力されると、A2には自動で、75 A1に、 78 と入力されると、A2には自動で、80 A1に、 72 と入力されると、A2には自動で、70 A1に、 73 と入力されると、A2には自動で、75 A1に、 -77 と入力されると、A2には自動で、-75 A1に、 -78 と入力されると、A2には自動で、-80 このように、2以下は、切捨て 3以上は、切り上げ しかも、上げる数値は、5きざみで、やりたいのです 教えてください。 よろしくおねがいします。 先ほど、教えていただいたものを参考に自分でやりますがなぜか、うまくいきません。

  • 少し、違った四捨五入なんですが・・

    皆様、おせわになります。 さて、 A1に、 0.2 と入力されると、A2には自動で、0 A1に、 0.3 と入力されると、A2には自動で、0.5 A1に、 0.7 と入力されると、A2には自動で、0.5 A1に、 0.8 と入力されると、A2には自動で、1 A1に、 -0.2 と入力されると、A2には自動で、0 A1に、 -0.3 と入力されると、A2には自動で、-0.5 このように、0.2以下は、切捨て 0.3以上は、切り上げ しかも、上げる数値は、0.5きざみで、やりたいのですが、教えてください。 わかりにくい時は、補足いたします。 よろしくおねがいします。

  • excel関数で四捨五入以外の切り捨て、切り上げ

    excelの関数で四捨五入以外の切り捨て切り上げはどうすればいいでしょうか。 小数点以下を切り上げ・切り捨てしたいのですが、 .5までは切り捨てにしたいのです。.51だと切り上げ。 ROUNDだと.5から切り上げになりますよね。 よろしくお願いいたします。

  • エクセル関数で

    お世話になります。下記の数値の小数点以下3桁目をある条件で 切り上げ・切捨てを行いたいのですが、その条件に加えて小数点以下3桁 目が0でも切上げにする場合の数式を教えていただけないでしょうか? 【条件】23.230以下は、小数点以下3桁目を切り捨て。23.231以上は 小数点以下3桁目を切上げる。ただし、23.231以上で切上げる場合、 小数点以下3桁目が0の場合でも切上げる(*) 例)23.151 → 23.15   23.150 → 23.15   23.230 → 23.23   23.231 → 23.24 (*) 23.240 → 23.25 切り上げ、切捨ての数式はIF関数でできたのですが、23.231以上で 切上げる場合、小数点以下3桁目が0の場合でも切上げるというのが 分かりません、、、 =IF(A1>=23.231,ROUNDUP(A1,2),ROUNDDOWN(A1,2)) ご指導いただきたく、宜しくお願い致します。

  • エクセル関数の50円単位の四捨五入

    エクセルの関数で、次のようなことが出来る関数はありますか? 10円単位で四捨五入で 10円の位が49円以下なら切り捨て 10円の位が50円ならそのまま 10円の位が51円以上なら切り上げ 例えば 444093円 → 444100円 299339円 → 299300円 892250円 → 892250円 よろしくお願いします。

  • Excelの四捨五入で・・・

    他の方も質問されてるものも拝見したのですが、消費税等の計算をする時、個別に出すのと合計に対して出すのとでは数値が違いますよね。それを、Round関数等を使わずに、シート全体に出た値を小数点以下切り捨てで返すように設定をする事はできますか? 1シートに設定する箇所が多いもので、何とかならないかと思ってます。 どなたかご存知の方がおられましたら教えて下さい。

  • Excelの関数について

    Excelの関数について教えて下さい。 小数点2位未満の端数について、切り上げor切り捨ての処理をしたいのですが、 具体的には、計算結果が50銭円以下の場合には切り捨てて0円に、 50銭1厘以上の場合には切り上げて1円にしたいのですが、 どんな関数を使えばよいのでしょうか? (例1)A1:¥64、B1:0.008、C1:A1*B1=¥0.512→¥1 (例2)A2:¥63、B2:0.008、C2:A2*B2=¥0.504→¥0 ※雇用保険料の計算です、  A列には給料の金額が入り、  C列には円未満が50銭以下の場合は円未満切り捨て、円未満が50銭1厘以上の場合は円未満切り上げとなります。 宜しくお願いいたします。

  • エクセルでの四捨五入関数に関しての質問です。

    エクセルの関数計算で悩んでいます。 A列にいろいろな数字が入っているとしてB列に計算結果を出したいのですが 1.数字の末尾が4以下の物は丸める。   11 → 10   12 → 10   101 → 100   123 → 120 2.数字の末尾が0や5の場合はそのまま。   10 → 10   30 → 30   500 → 500   15 → 15   45 → 45   1055 → 1055 3.末尾が6以上だったら9にする。   16 → 19   38 → 39   108 → 109   1237 → 1239 という計算式はできるのでしょうか。 一つ一つならROUNDUPやROUNDDOWNでできるのですが、 まとめてとなるとifと不等号が必要なのかなと漠然なことしか思い浮かびません。 よろしくお願いいたします。

  • Excel 四捨五入の関数?

    次のような処理を行いたいのですが、関数がわかりません。 (1)数値の下三桁が500以上(500~999)だったら、1000にする。 (2)数値の下三桁が500以下(1~499)だったら、0にする。 (1)と(2)をIF文なんかでやれるといいのですが・・・。 お分かりになる方、教えてください。 よろしくお願いします。

  • エクセル 複雑なIF関数を避けたいのですが…

    入力した数値を一定のルールで丸めて出た数値を別のセルに返したいのですが、 ●1以上10,000未満の場合 【1の位】切り捨て【10の位】1~5の場合5、6~9の場合0で100の位に1プラス【100の位以上】そのまま ●10,000以上100,000未満【1の位】切り捨て【10の位】切り上げ【100の位以上】そのまま ●100,000以上1,000,000未満【1の位】切り捨て【10の位】切り上げ【100の位】切り上げ【1000以上の位】そのまま ●1,000,000以上10,000,000未満【1の位】切り捨て【10の位】切り捨て【100の位】切り上げ【1000以上の位】そのまま ●10,000,000以上【1の位】切り捨て【10の位】切り捨て【100の位】切り捨て【1000の位】切り上げ【1万以上の位】そのまま といったルールなのです。 CEILINGやIF関数を使ってと思ったのですが、一つのセルに7個以上は使えないし… 一度やってみたら =IF(T1="","",IF(V1="","",IF(V1>T1,"",IF(LEN(V1)<=3,ROUNDUP(A1,-LEN(V1)+2),IF(LEN(V1)=4,IF(LEN(ROUNDUP(A1)-50)>4,ROUNDUP(A1),(ROUNDUP(A1,-2)-50)),ROUNDUP(A1,-(LEN(V1)-3))))))) 1こんなに長くなってしまいました。 もっとシンプルでできないものでしょうか?

専門家に質問してみよう