こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル 退勤表

こんばんは。
行き詰まりを感じましたのでどうか教えてください。
只今、エクセルで出退勤表を作成しています。
その際に実労働時間を求めたいのですが、IF関数が上手く組めません。
以下に条件を表示します。
(1)勤務時間は8:30~17:30です。
(2)休憩時間を入れます。
 ・8:30~12:00までの出勤の方は昼休憩時間無し、中休憩時  間なしの3時間30分勤務です。
 ・8:30~15:00までの出勤の方は昼休憩時間が50分ありの  中休憩時間なしの5時間40分勤務です。
 ・8:30~17:30までの出勤の方は昼休憩時間が50分ありの  中休憩10分の8時間勤務です。

自分で時間計算を考えたのですが
 8:30~17:30まで「=退勤時間-出勤時間-TIME(1,0,0)」
 8:30~15:00まで「=退勤時間-出勤時間-TIME(0,50,0)」
 8:30~12:00まで「=退勤時間-出勤時間」
をつかって
=IF(退勤時間<="12:00",退勤時間-出勤時間,IF(退勤時間<=15:00,退勤時間-出勤時間-TIME(退勤時間-出勤時間-TIME(0,50,0),退勤時間-出勤時間-TIME(1,0,0)
と考えましたが計算ができませんでした。
まったく違うのかもしれません。
訂正もしくは根本的に考えが違うのか、教えてください。
宜しく御願いします。

投稿日時 - 2009-02-23 18:36:10

QNo.4742903

すぐに回答ほしいです

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

カテ違いだと思いますが。
ExcelなどのOffice製品は↓こちらだと思いますよ。

デジタルライフ > ソフトウェア > Office系ソフト

より回答を得やすくなると思いますし。

それはさておき。

> =IF(退勤時間<="12:00", (以降略)
> と考えましたが計算ができませんでした。

せっかくTIME関数に辿り着いているのに…
"12:00"と文字列扱いしているので、IF文で判定ができない?(FALSEを返す)といったところでしょうか?

A列に出勤時間。
B列に退勤時間。
C列に勤務時間を計算する式を埋め込み、
↓以下のように表示させます。A~C列の書式は「ユーザー定義」の「hh:mm」にしています。「ユーザー定義」ではなく「時間」とかでもいいかもしれません。

 | A   | B   | C
--+---------+---------+---------------
1| 08:30 | 12:00 | 03:30
2| 08:30 | 15:00 | 05:40
3| 08:30 | 17:30 | 08:00

このとき、セル「C1」には以下の式を埋め込んであります。
=B1-A1-(IF(B1=TIME(12,0,0),TIME(0,0,0),IF(B1=TIME(15,0,0),TIME(0,50,0),IF(B1=TIME(17,30,0),TIME(0,50,0)+TIME(0,10,0),TIME(0,0,0)))))

C列2行目以降はコピペで。

投稿日時 - 2009-02-24 09:24:54

お礼

早速の返信ありがとうございました。
現在進行中で教えてい頂いた式を組んでいます。
また出来上がったら改めて返信させていただきます。
ありがとうございました。

投稿日時 - 2009-02-25 12:06:43

このQ&Aは役に立ちましたか?

3人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問