- 締切済み
エクセル時間の求め方と色
エクセルの勤務管理表で、8時間以上の時間を表示する数式を教えて下さい 例えば… D1に9.75と入力されているものを 8時間を差し引き E1に1.75と表示させたいです。 また、D1セルの8時間以上のものは、自動的に赤字になるようにしたいので、そちらの方法もあわせてよろしくおねがいします。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- web2525
- ベストアンサー率42% (1219/2850)
>E1に =D1-(D1>8)*8 と入力 >では、8以下の場合、D1の値そのままになってしまいます。 あらら、ミスです ごめんなさい
- chie65536(@chie65535)
- ベストアンサー率44% (8752/19860)
追記の追記。 「遅刻や早退で、勤務時間が8時間に満たない場合」には「足りない時間数をマイナスで表示するのが判りやすい」でしょうから、色々と小細工などせず =D1-8 とだけ書くのが一番スマートでしょう。 そうすれば 9.5 → 1.5 8.0 → 0 7.75 → -0.25 8.25 → 0.25 7.0 → -1.0 のように、勤務時間が足りないのはマイナスで表示されます。で、書式指定で「マイナスは赤字」にすれば、もっと見やすくなります。
- chie65536(@chie65535)
- ベストアンサー率44% (8752/19860)
追記。 ANo1さんの式 E1に =D1-(D1>8)*8 と入力 では、8以下の場合、D1の値そのままになってしまいます。 例えば、大幅に遅刻して1時間半しか勤務せず、D1に1.5と入力すると、E1にも1.5と表示され、まるで、1時間半残業してしまったように表示されます。 E1は「D1が8以下なら0にする」が正しいと思うので =(D1>8)*(D1-8) と書かないと、残業したんだか残業してないんだか、訳が判らなくなります。
- 9der-qder
- ベストアンサー率36% (380/1038)
エクセルの「時間」って結構曲者ですね。 9.75・・・時間表記ではない気がするのですが・・・ ま、それはさておき、ご質問の意図は、8時間未満であれば列Eには表記されないということでしょうか。 それなら =IF(D1<8,"",D1-8) で出来ます。 また、赤字にするのは「書式」-「条件付書式」で出来ます。
- chie65536(@chie65535)
- ベストアンサー率44% (8752/19860)
>E1に1.75と表示させたいです。 普通に、E1に =D1-8 って書いちゃダメなんですか? もしかして、どこかのセルに「8:00:00」とかって感じで「時刻形式」で「日付・時刻型データ」が入力されてて、単純に8を引く事が出来ないとかですか? >また、D1セルの8時間以上のものは、自動的に赤字になるようにしたい D1セルを選び、メニューの「書式」から「条件付き書式」を呼び出し、左の欄を「セルの値が」に、中央の欄を「次の値以上」にして、右の欄に「8」と入力し「書式」のボタンを押しダイアログを出し、「フォント」タブにして「色」を赤にして「OK」ボタンですべて閉じて下さい。
- web2525
- ベストアンサー率42% (1219/2850)
D1数値としてが9.75と入力されているのであれば E1に =D1-(D1>8)*8 と入力 >また、D1セルの8時間以上のものは、自動的に赤字になるようにしたいので 参考URLの条件付書式の設定を参考に。