• ベストアンサー

エクセルの時間の関数合わない↓(長文ですみません)

時間の日報をエクセルで作成するのですが、 時間は15分単位で 作業時間は 7.0、7.25、7.50、7.75、8.0・・・ (こちらはx.xx*"1:0"の時間表示設定) 終了時間-開始時間の合計の時間は 7:00、7:15、7:30、7:45、8:00・・・ のように作成しました。 合計時間が共に合っていれば○、間違っていれば×となるように =IF(A1=A2,"○","×")と作成したのですが、 同じ(A1)7:00 (A2)7:00(=A2*"1:0") で同じ時間の表示のはずなのに×と表示されてしまいます。 A1のには合計計算がはいているのですが、 合計ではなく、直接手打で7:00と入力すると○と表示されます。 手打の7:00と合計の7:00の表示では見た目同じでも エクセルでは計算式が入っているために同じものにはならないのでしょうか? また解決策があれば教えてください。

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

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

こんばんは。 私には、何を合算しているのか内容が分からないのですが、合算した合計を、プログラミングで使う方法ですが、小数点固定法という方法を用いればよいですね。 =IF(FIXED(A1,6)=FIXED(A2,6),"○","×") 小数点第6位まで指定します。

tanushima
質問者

お礼

回答がおそくなり申し訳ありません。 FIXED みごとこれで解決できました。 本当にありがとうございました。

その他の回答 (3)

  • kawajisan
  • ベストアンサー率30% (53/171)
回答No.4

>手打の7:00と合計の7:00の表示では見た目同じでも >エクセルでは計算式が入っているために同じものにはならないのでしょうか? 時間に関しては、手入力と計算値は「厳密には」違うことがあります。 どの程度かはしりません(1ミリ・ピコ・ナノ・ナノナノ秒??) みためにはかわらないが、比較すると判別される。 参考↓ “達人”芳坂和行氏に学ぶ、エクセル(Excel)「演算誤差」対策講座 http://pc.nikkeibp.co.jp/pc21/special/gosa/index.shtml 対策の一案ですが時間を秒単位にして、それ以下は無視する。 するとそのへんにあった「ミリ・ピコ」なんかの影響はうけない。 1秒は「0.000012 」と計算されたので少数点以下第7桁を4捨5入する。 =ROUND(A1,7) これはNo.2さんの =FIXED(A1,6) とまったくおなじようです。FIEXED おはつにおめにかかりました。

tanushima
質問者

お礼

回答がおそくなり申し訳ありません。 無事に解決できました。 ROUNDでもできるのですね。 本当にありがとうございました。

  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.3

A1セルの時分表示値 、A2セルの時分表示値  をシリアル値で見た時、同じ結果になるかどうか確かめる。 近くの空きセルに数式  =N(A1)-N(A2) を入れてみて 結果が ゼロ または 0:00 になるかどうか。

tanushima
質問者

お礼

回答がおそくなり申し訳ありません。 無事に解決できました。 本当にありがとうございました。

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

エクセル内部では1日は整数の1、1時間は"1:0"=1/24で表されます。当然これは少数になります。この少数で表される値(時間)を加減算していると小数点以下の誤差が発生する場合があり、それで「同じ時間の表示のはずなのに×」となった可能性があります。 確認ですが勤務時間の合計は日毎の元の数字(7.75)を加算していますか、それとも時間に変換したあとの数字("1:0"を掛けた7:45)を加算していますか? もし後者なら誤差により加算結果が「×」と判定された可能性が疑われます。加算は前者の数字で行い、加算結果に"1:0"または1/24を掛けて時間表示にされたら「○」になるかもしれません

tanushima
質問者

お礼

回答がおそくなり申し訳ありません。 無事に解決できました。 本当にありがとうございました。

関連するQ&A

  • EXCELで関数を使って残業時間の計算がしたいのですが・・

    EXCELを使って残業時間の計算したいと思っているのですが、関数にあまり詳しくないのでアドバイスお願い致します。 (A1)出社、(B1)退社時間は30分単位で自分で入力します。 D1に10時間以降残業にし、残業に満たない場合は未表示で30分単位は0.5と表示させようと思っています。 今現在 A1=出勤時間 8:00 B1=退社時間 20:00 C1=労働時間 12:00   関数  =IF(A1="","",B1-A1) D1=残業時間 =IF(C1="","",IF(C1>"10:00",(C1-"10:00")*24,"")) と、いう感じにやってみましたが、D1の計算がうまくいきません。よくわからないのですが、シリアル値というのが関係してるのでしょうか?宜しくお願い致します。

  • エクセルで勤務時間のIF関数

    こんにちわ。エクセルで、バイトの月々の総勤務時間を計算したいんですが、うちのバイトは、勤務時間が8時間以上の時は1時間の休憩をいれなくてはならないことになってます。そこで、質問です。 勤務開始が12:00(A1) 勤務終了が21:00(B1) 勤務時間が(=B1-A1)となります。(C1) そのとき、IF関数で、『C1の値が8:00以上の時はC1の値から1:00を引き、D1にその値を表示する』というのを入れたいのですが、上手く出来ません。どういう式を入れればいいのか教えてください。 それと、エクセルで時間を計算する時に、12:00とか21:00とかをつかっててもいいのでしょうか?適切な時間計算法がありましたら教えてください。 よろしくおねがいします

  • 日報の時間計算を行う関数について

    勤務時間を管理の日報を作成しています。以下の条件をつけて出勤時間と退社時間を記入するだけで1日の総勤務時間を表示してくれる関数をご教示お願いします。 ・9:00出勤で18:00定時退社で15分単位で表示 ・セル(開始)は9:00、(終了)に18:00以降の時間を手入力 ・セル(工数)に関数で総勤務時間を計算 ・9:00から18:00までに1時間15分の休憩をとるため、自動的に差し引いて計算 ・残業は18:15からカウントされるため、18:30以降残業して退社した場合は15分差し引いて計算 ・残業最終時間0:00までとして計算 ・セル(開始)、(終了)に9:00~0:00の15分単位の時間以外を入力はない前提とします ・遅刻、早退による変則時間の入力はない前提とします 【例】 (開始)9:00、(終了)18:00の時は(工数)に7.75 (開始)9:00、(終了)18:15の時は(工数)に7.75 (開始)9:00、(終了)18:30の時は(工数)に8 (開始)9:00、(終了)0:00の時は(工数)に13.5 よろしくお願いします。

  • Excel 日付をまたぐ労働時間の計算方法

    今回、労働時間の計算方法とその合計時間をExcelで作成したいと思ったのですが 合計時間が表示されません。 教えていただけたら嬉しいです。 お願いします。 A2セル 日付        2017/11/1 B2セル 開始時間      8:00 C2セル 終了日付及び時間  2017/11/2 10:00 D2セル 休憩時間      6:00 E2セル 労働時間      =C2-B2+IF(B2>=C2,1)-D2               20時間の計算となります。 上記の表を作成し日々の労働時間の合計をSUMを使って計算すると全然違う数字になります。 今月の労働合計時間を表すにはどのようにすればいいでしょうか? 合計時間を表記するセルには 書式設定→ユーザー定義→[h]:mm を用いて表記しています。 どなたか詳しい方よりご教授いただければ幸いです。 宜しくお願い致します

  • エクセル上での時間集計

    エクセルを使用して作業日報を作成していますが、時間集計の方法と、集計時間に定数をかけて算出する方法を教えて下さい。日々の入力は、開始時刻9:00、終了時刻18:00、休憩1:00にて作業時間8:00(A)。これを1カ月繰り返して、作業時間を集計する(B)。このBに6000を掛けて¥000,000.-みたいな表示をしたいのです。宜しくお願いします。

  • エクセルによる時間の集計表示について

     エクセルによる時間外の残業計算について、  合計表示がうまく表示しません。  毎日の勤務日報の残業時間を1:15とか  00:30とか入力したあとで、Σにより  時間表示に設定して集計をすると、  24時間30分の場合、0:30と表示→24:30に表示したい  28時間30分の場合、4:30と表示→28:30に表示したい  どうしたら表示なるか誰か教えて下さい。  

  • エクセル関数

    現在エクセルで勤務時間を計算するデータを作成しているのですが、1点わからない点がありまして質問させてください。 平日の残業時間の計算は =IF(OR(+$C6="土",$C6="日"),I6,IF(I6>480,I6-480,0)) のようにして一応17:30以降の働いた場合の表示はできているので、問題ないのですが、 たとえば、休日の場合、平日と同じように働いたとしても、残業扱いにするとき、労働基準法で6時間を超える作業をする場合、45分の休憩をとりなさいというものを考えて計算式を作る場合、単純に作業時間が6時間超える場合、作業開始時間から終了時間の差から1440-45の数値(時間を分に置き換えた数値)をかけてあげれば、計算できるのですが、 ここからが悩んでいます。 6時間に満たない作業時間の場合、45分の休憩時間を引かずに計算式で計算し、表に表したいのですが、どのようにしたらいいのでしょうか? 例) 13:00作業開始 17:30作業終了 4:30作業時間 としたいのですが、現在だと3:45と表示されてしまいます。 おそらくIF関数を使用すればできると思うのですが、思うようにできません。 6時間以上か未満か判断し、45分の休憩を考えた関数をどなたか教えていただけないでしょうか? 宜しくお願い致します。

  • エクセル関数で・・・

    エクセル表についての質問です。 A1セルに数値で“180”、B1セルに同じく“200”と入力したとします。 これは180時間、200時間を意味する数字で、以後のエクセル表では “180:00”、“200:00”と認識させる必要があります。 以前はA2セルに手打ちで“180:00”、B2セルに“200:00”と入力して この数値を元に以後の計算をしておりました。 ここで質問です! A1セルに“180”と入力して、A2セルに“180:00”と表示され、以後の 計算式に活用させるためにはどのような関数をA2セルに使えばよろしいですか? 未熟者をお助け下さい。

  • エクセルで時間計算

    単純に19:00以降からの時間計算をしたいのですがうまくいきませんので教えていただけないでしょうか? 内容は19:00以降の時間を入力した場合そこからの時間を1時間単位で切り捨てた時間を求めたいのです。 A2に19:00以降の時間を入力した場合、C2に1時間単位での数字を表示させ、19:00未満では空白を表示させたいのですが、IF関数を使って、IF(A2>"19:00","19:00"-A2,"")だと20:00でも論理式の時点でFALSEになってしまいます。 その理由と1時間単位に切り捨て方法を教えていただけないでしょうか?宜しくお願いいたします。

  • エクセル時間表示について

    はじめまして。 エクセルについて教えてください。 エクセルで日報を作成しているのですが、 AA10 6:15 AA11 7:00 AA12 7:00 AA13 7:00 AA14 7:00 こちらを=SUM(AA7:AA14)で計算すると1:15と表示されてしまいます。 なぜなのでしょうか? また15分を0.25表示にすることもできるのでしょうか? 教えていただけると嬉しいです。 宜しくお願い致します。

専門家に質問してみよう