エクセル2007を使っています。

エクセルで勤怠表を作成するのですが、問題点があるので
お教え頂ければ幸いです。

1.交代勤務をしています。 早番・遅番・日勤・深夜勤があります。
  この区別をしたいです。

2.遅刻、早退が多いので評価に反映させたいです。
  極端ですが、1分の遅刻や早退でも、15分単位として勤務時間を減らしたいのです。

3.時間の表現は、通常「8」時間、15分単位としての遅刻、早退などがある場合は、
「7.75」時間、「7.5」時間というように勤務時間を表示したいのです。

A1列に出勤時間、B1列に退社時間というような標準的な入力としています。

よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (8件)

次の例を参考にしてはどうでしょう。


例えばシート1ではA1セルに氏名、B1セルに出勤時間、C1セルに退社時間、D1セルに勤務形態、E1セルに遅刻、F1セルに早退、G1セルには定刻の勤務時間が9時間としてそれを過ぎた超勤時間、H1セルに勤務時間の項目名がそれぞれ入力されているとします。A、B,C列の2行目以降にはデータをそれぞれ入力するとします。
そこで初めに勤務形態を決めた時間表を用意することが必要になりますがそれらはデータベースとしてシート2に作成するとします。
シート2ではA2セルに早番、A3セルに日勤、A4セルに遅番、A5セルに夜勤の項目名を入力します。
B1セルには出勤時間、C1セルには退社時間の文字を入力します。
そこで実際のデータを入力するわけですがここでは例えばB2セルから下方には6:00,8:00,10:00,22:00と入力し、C2セルから下方には15:00,17.:00,19:00,7:00と入力します。
これらの条件は勤務形態を決めるうえで非常に重要になりますね。
そこでシート1に戻ってD2セルには次の式を入力して下方にドラッグコピーします。

=IF(AND(B2>"5:30"*1,B2<"7:30"*1),"早番",IF(AND(B2>="7:30"*1,B2<"9:30"*1),"日勤",IF(AND(B2>="9:30"*1,B2<"12:00"*1),"遅番",IF(AND(B2>="21:30"*1,B2<="24:00"*1),"夜勤",""))))

この式では勤務形態が出勤時間を判断して決めるような形になっています。それができない場合には手入力であるいはリスト表示から入力する方法もありますね。
次にE2セルには次の式を入力して下方にドラッグコピーします。

=IF(D2="","",IF(B2<=INDEX(Sheet2!B:B,MATCH(D2,Sheet2!A:A,0)),0,CEILING(B2,"0:15")-INDEX(Sheet2!B:B,MATCH(D2,Sheet2!A:A,0))))

F2セルには次の式を入力して下方にドラッグコピーします。

=IF(D2="","",IF(C2>B2,IF(C2<INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0))-FLOOR(C2,"0:15"),0),IF(C2>INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),0,INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0))-FLOOR(C2,"0:15"))))

G2セルには次の式を入力して下方にドラッグコピーします。

=IF(D2="","",IF(C2>B2,IF(C2>INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),FLOOR(C2,"0:15")-INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),""),IF(D2<>"夜勤",CEILING(C2,"0:15")+"24:00"-INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),IF(C2>INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),FLOOR(C2,"0:15")-INDEX(Sheet2!C:C,MATCH(D2,Sheet2!A:A,0)),""))))

H2セルには次の式を入力して下方にドラッグコピーします。

=IF(D2="","",("9:00"-E2-F2+G2)*24)

最後にE,F,G列についてはセルの表示形式は時刻から指定します。H列については標準にします。
    • good
    • 0
この回答へのお礼

ご回答いただきました皆様。
どうもありがとうございました。
今回は自分で解決となりました。

お礼日時:2012/04/23 19:56

No.2・6です。



(1)遅刻と早退をしているところがあり、そこでは15分と15分で30分を・・・
(2)一人、一月にばらばらのシフトで日勤、夜勤、休み、遅番、早番・・・

とありますので、前回の案に少し手を加えた感じで!

一人1Sheetになりますが↓の画像のようにA列に日付(単に数値のみ)を入れておきます。
Sheet2には前回同様表を作成し、Sheet2のA列部分をSheet1のプルダウンリスト表示できるようにしてみてはどうでしょう?

Sheet2のA2~A6セルを範囲指定 → 名前ボックス(画面左上のセル番地が表示されているところ)に
仮に 勤務形態 としてOK
(名前はどんな名前でも構いません。文字頭に数値・アルファベットは使用しない方が良いみたいです)

これでSheet2のA2~A6セルが「勤務形態」と名前定義されました。
Sheet1のB2セル以降を範囲指定 → データ → 入力規則 → リスト を選択 → 元の値の欄に
=勤務形態
としてOK
これでSheet1のB列セルがプルダウンでSheet2のA2~A6セルを選択できるようになります。

後は前回同様です
Sheet1のE2セルに
=IF(COUNTBLANK($B2:$D2),"",VLOOKUP($B2,Sheet2!$A$2:$C$6,COLUMN(B1),0))
という数式を入れ隣のF2セルまでオートフィルでコピー!

G2セルは
=IF(COUNTBLANK(C2:F2),"",SUM(IF(C2>E2,CEILING(C2-E2,"0:15"),0),IF(D2<F2,CEILING(F2-D2,"0:15"))))

H2セルは
=IF(COUNTBLANK(C2:G2),"","8:00"-G2)

として最後にE2~H2セルを範囲指定 → H2セルのフィルハンドルで下へコピー!
これで何とかご希望の近い形にならないでしょうか?m(_ _)m
「エクセルで勤怠表作成について教えてくださ」の回答画像7
    • good
    • 0

No.2です!


一つの案です。

↓の画像のようにSheet2に各勤務形態の定時出勤時刻・退勤時刻の表を作成してみてはどうでしょうか?

D2セルに
=IF($A2="","",VLOOKUP($A2,Sheet2!$A$2:$C$5,COLUMN(B1),0))
という数式を入れ、隣のE2セルまでオートフィルでコピー

F2セルに
=IF(COUNTBLANK(A2:E2),"",CEILING(IF(B2>D2,B2-D2,0)+IF(C2<E2,E2-C2,0),"0:15"))

G2セルに
=IF(F2="","",HOUR("8:00"-F2)+MINUTE("8:00"-F2)/60)
という数式を入れ、D2~G2セルを範囲指定 → G2セルのフィルハンドルで
下へコピーすると、画像のような感じになります。

仮に数分だけ遅刻して、退勤時刻が定時より大幅に遅くても遅刻だけしか考慮していません。
(残業時間等の考慮なし)

※ D・E列が目障りであれば非表示にしても良いかと思います。

参考になりますかね?m(_ _)m
「エクセルで勤怠表作成について教えてくださ」の回答画像6
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

画像付きでたいへん参考になりました。
ですが、遅刻と早退をしているところがあり、そこでは15分と15分で30分を
カウントしなければなりませんが、15分になっていますから、惜しいですね。
これをヒントに作成したいと思いますが、一人分で数日分しかありませんね。
一人、一月にばらばらのシフトで日勤、夜勤、休み、遅番、早番・・・と
続いていくので膨大になりそうです。

お礼日時:2012/04/12 00:50

遅刻や早退、早番、遅番などの複雑な計算については最近のURLを参考にしてください。



http://oshiete.goo.ne.jp/qa/7410058.html
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

お礼日時:2012/04/11 11:37

回答No3です。


一部の表現が間違っていました。
また出勤時間については15分単位で処理をして余った時間は切り上げ処理をしています。
    • good
    • 0

15分単位で時間を処理する方法と7.5といったように勤務時間を表示させる方法について述べます。


例えばA2セルに出勤時間として9:05、B2セルには退社時間として17:40のように入力させているとしたらその勤務時間は

=(FLOOR(B2,"0:15")-CEILING(A2,"0:15"))*24

この式では退社時間については15分単位で処理するのですが余った時間は切り捨てをしています。また出勤時間については15分単位で処理をして余った時間は切り捨て処理をしています。
上記の場合には17:00から9:15を引いた時間となります。
7.5時間の表示にするためには時間の計算はシリアル値で行われ日にち単位の計算になっていますので24を掛けることで行っています。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

これだと深夜勤の場合は、マイナスになってしまいます。

お礼日時:2012/04/11 11:31

こんにちは!


具体的なセル配置が判らないので・・・

(2)に関しては

=CEILING(遅刻時間+早退時間,"0:15")
(遅刻時間・早退時間はシリアル値です。0:31 のような感じ)

としてセルの表示形式は「時刻」でも構いませんが、
ユーザー定義から
[h]:mm 
としておいた方が良いかもしれません。

(3)については
仮にA1セルに「7:45」と表示されているとすると

=HOUR(A1)+MINUTE(A1)/60

として、セルの表示形式は「標準」にしておきます。

こんなんでどうでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

3については、同じ意見です。
2については、よくわかりません。

お礼日時:2012/04/11 11:34

出勤時間をA1、退勤時間をA2にそれぞれ「日付シリアル」


(9:15 17:10 など、時刻表示のこと)で入力してあったとして。

=HOUR(A2-A1)+ROUNDDOWN(MINUTE(A2-A1)/15,0)/4

これで、セルの表示形式を数値、または標準にすれば、
「X.XX」時間として表示される筈です。

ただし、休憩時間のことは全く考えてませんので、その分を
どうやって控除するか、という問題はあります。

早番、遅番、日勤、深夜勤は、各々別の列に入力しておけば
いいだけなんですが、例えば出勤時間で判断できるなら、

=IF(A1>TIME(17,0,0),"深夜勤",IF(A1>TIME(12,0,0),"遅番","早番"))

などと設定すれば良いだけの話です。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

確かに出勤時間で○番なのか判断しますが、
早めに出てくるのはいいのですが、遅刻してくる人が多いので、
一概に断定できません。さらに、遅刻してその上早退する人もいますから、
困っています。

お礼日時:2012/04/11 11:36

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセル プルダウンの作り方

お世話になります。
エクセルでプルダウンの作り方を教えていただけませんでしょうか?
住所を▼のボタンでクリックしたら【北海道,青森,秋田,岩手・・・】などの選択ができるようにしたいのです。
宜しくお願いします。

Aベストアンサー

メニューから「データ」、「入力規則」、「設定」で「入力値の種類」を「リスト」を選択します。
そうすると「元の値」という表示がでますので、そこで前もって作っておいたリストの範囲を指定します。
多くないのでしたら、そのままそこにカンマで区切って入力しても出来ます。

Q勤怠の集計表をエクセルで作成しました。

勤怠の集計表をエクセルで作成しました。

実際に手計算すると0:00になるのに、関数を組んだところ、###########・・・と表示されます。
どうしてですか?

内容は・・・
『時』『分』を分けてセルに入力(例:A1セル→8、B1セル→:、C1セル→30)すると、
一日の労働時間を求めるようになっており、『残業』、『深夜残業』も求めるようにしています。
さらに表の下部に求められた時間の合計が表示するように作りました。

実際にテストで入力してみたところ、始業が14:00、終業が22:00(休憩なしで、8時間労働)
にすると労働時間が求められ、『深夜残業』が0:00と表示されますが、『残業』が
##############・・・となり、カーソルを合わせると「負の日付又は時間は########と表示します」
とメッセージが表示されます。
しかし、実際は0:00と表示されてきてほしいのですが、上記のように表示され、表下部『残業』合計
が正しい数字になってきません。

いろいろと関数を組みなおしてみたのですが、結果は同じでした。

教えてください。よろしく御願いします。

ちなみに、私が組んだ関数は以下の通りです。

=IF(J6>"22:00",O6-"8:00"-R6-P6,IF(J6<"22:00",O6-"8:00"-P6))

上記セルの内容は以下の通りです。

  J6・・・終業、O6・・・労働時間、R6・・・深夜残業、P6・・・早出時間

 基本となる時間は、
  始業・・・8:30、終業・・・17:30です。

勤怠の集計表をエクセルで作成しました。

実際に手計算すると0:00になるのに、関数を組んだところ、###########・・・と表示されます。
どうしてですか?

内容は・・・
『時』『分』を分けてセルに入力(例:A1セル→8、B1セル→:、C1セル→30)すると、
一日の労働時間を求めるようになっており、『残業』、『深夜残業』も求めるようにしています。
さらに表の下部に求められた時間の合計が表示するように作りました。

実際にテストで入力してみたところ、始業が14:00、終業が22:00(休憩なしで...続きを読む

Aベストアンサー

>ちなみに、私が組んだ関数は以下の通りです。
=IF(J6>"22:00",O6-"8:00"-R6-P6,IF(J6<"22:00",O6-"8:00"-P6))

上記の数式には重要な誤りが2つあります。

まず今回の#####がセルに表示されるのは、計算結果がぴったり「0」でなく、正確にはごくわずか0より小さい値となっているためです。

その原因は、時間などの小数点以下の数字を演算(特に引き算)したときに発生する丸め誤差によるものです。

すなわち、2進数で表せない時間などの数値を引き算すると、本来0となるべき値が0とならずに0よりもわずかに大きいまたは小さい値となるわけです(セルの書式を「数値」にして小数点以下の桁数を15ケタ以上表示してみてください)。

0よりも大きい場合は表示上気がつきませんが、0より小さい値となった場合は、今回のようにエラー表示されることになります。

このような誤差は、時間を引き算したデータで大小の条件判定する場合にも(以上や以下を比較する場合に)出ますので、数式を作成する場合は微小値を加減するなど注意が必要です。

提示された数式のもう1つの重要な誤りは、時間の大小比較で「=IF(J6>"22:00",…」の条件式がありますが、これは左が数値で右が文字列になっているのでいずれの場合もFALSEを返します(文字列は数字よりも大きい)。

正しくは「「=IF(J6>"22:00"*1,…」」のように1を掛けて数値化した値と比較する必要があります(「「=IF(J6-"22:00">0,…」でもOKIです)。

>ちなみに、私が組んだ関数は以下の通りです。
=IF(J6>"22:00",O6-"8:00"-R6-P6,IF(J6<"22:00",O6-"8:00"-P6))

上記の数式には重要な誤りが2つあります。

まず今回の#####がセルに表示されるのは、計算結果がぴったり「0」でなく、正確にはごくわずか0より小さい値となっているためです。

その原因は、時間などの小数点以下の数字を演算(特に引き算)したときに発生する丸め誤差によるものです。

すなわち、2進数で表せない時間などの数値を引き算すると、本来0となるべき値が0とならずに0より...続きを読む

Qエクセルでプルダウンメニューの作り方

  エクセルの画面で、よく三角形を逆さまにした形をクリックするといくつかメニューが出てき、どれかを選べるようになっていますが、その作り方を教えてください。
 会社で人事を担当していますが、三角形(プルダウンボタン)をクリックすると社員氏名一覧が表示され、そこから選択できるようにしたいのです。
 しばらく自力でいろいろやってみましたが、さっぱり見当がつかず、どうやればいいのか分かりませんでした。よろしくお願いします。

Aベストアンサー

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならないでしょうか?
Excel2007の場合は↓のURLが参考になるかもしれません。

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-ny_kis2.html

尚、同一Sheetに「名簿表」を作成する場合は名前定義する必要はなくて
「元の値」の右側の四角をクリックし、リスト表示したいセルをそのまま範囲指定すればOKです。

以上、お役に立てば良いのですが・・・m(_ _)m

こんばんは!
当方使用のExcel2003での一例です!

↓の画像のようにSheet2に名簿表を作成しておきます。
画像ではSheet2のA2セル以降を範囲指定 → 名前ボックスに仮に「名簿」と入力しOK
これで範囲指定したセルが「名簿」と名前定義されましたので、

Sheet1のリスト表示させたいセルを範囲指定 → メニュー → データ → 入力規則
→ リスト → 「元の値」の欄に
=名簿
としてOK

これでSheet1のセルをアクティブにすると右側に下向き▼が表示されますので、そこをクリック!
これで希望に近い形にならない...続きを読む

Qエクセル2007で予定表を作成しています。

エクセル2007で予定表を作成しています。
当日の2週間前に入力したセルの色を青。
1週間前だと黄色。2日前から当日を挟み4日後を赤。
それ以降は緑で表示させたいのですが、条件付きの書式ルールの作成方法を教えて頂けないでしょうか?
よろしくお願いいたします。

Aベストアンサー

No6です。良く考えたら
第一条件
=AND(F5<>"",TODAY()-F5>=14) 2週間以上前 青
第2条件
=AND(F5<>"",TODAY()-F5>=7) 1週間以上前 黄
第3条件
>=AND(F5<>"",F5-TODAY()<=2,F5-TODAY()+4) 2日前~4日後
に間違いがありますね
=AND(F5<>"",TODAY()-F5>=2,F5-TODAY()<=4) 2日前~4日後
では?
>1週間前だと黄色。2日前から当日を挟み4日後を赤。
6日から3日前の色が抜けていましたね。
もうひとつ条件を考えてみてください。

Qエクセル(Excel) 納品書の作り方【画像修正版

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が見にくかったのでシート<CENTER></CENTER>だけにしました。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルでコピー!
そのまま最後の24行目までコピーしておきます。

F4セルには
=IF(COUNTBLANK(B4:E4),"",D4*E4)
という数式を入れ、F24までオートフィルでコピー!

これでB列に商品番号を入力すればSheet2のデータが反映され、
E列に数量を入力でF列に金額が表示されると思います。

最後に合計金額のF26セルは
=IF(COUNT(F4:F24),SUM(F4:F24),"")
手数料のF27セルは
=IF(F26="","",F26*0.2)

これで何とか形にならないでしょうか?

※ 振込金額の欄は不明ですので手を付けていません。

参考になりますかね?m(_ _)m

こんばんは!
前回投稿した者です。

当方もかなり古い(人間も古い!なぁ~んちゃって!)Excel2003を使用しています。
↓の画像のようにSheet2にデータを作成しておきます。

#N/A というエラーは、「検索値」がない!ということですので
お示しの画像のB列にSheet2のA列にないデータを入力するとそういったエラーが表示されます。

画像のセル配置ですと
C4セルに
=IF($B4="","",VLOOKUP($B4,Sheet2!$A:$C,COLUMN(B1),0))
(「$」マークの位置に気を付けてください)
という数式を入れD4セルまでオートフィルで...続きを読む

Qエクセル2007で作成した表をディスプレー全体に表示させるマクロは?

エクセル2007で作成した表(B1:G20)をディスプレー全体に表示させるにはどのようなマクロを作ればよいでしょうか。
ディスプレーの解像度は1920×1200です。

Aベストアンサー

 
Application.DisplayFullScreen = True

 

Qエクセル(Excel) 納品書の作り方【改めて】

昨日http://oshiete.goo.ne.jp/qa/7348426.htmlで質問させていただき、詳しくご回答いただき少し進んだのですが、状況が変わったので改めて質問させていただきます。

■エクセル(Excel)で納品書の作成をしています。
シート1に納品書、シート2に商品マスタ(一覧)を作っていて、シート2の一覧を反映させて
納品書に番号を打ち込むだけで、商品名・単価までが出るシステムを作りたいのですが、
昨日のご回答の中の「VLOOKUP」?を入れて、自分なりにマス目の数字を変えてやってみたのですが
反映されずN/?のようなエラーになってしまいます。

※画像が貼り付けてあります。商品名は1番以外伏せさせていただいています。
くっつけてありますが、左側がシート1・右側がシート2です。

1、上記のように、シート2との関連付けの係数を、写真の場合の数字で教えてください。

2、合計と、合計から20%を引いた数値を割り出す関数も、写真の数字で御願いします。

宜しくご教授お願い致します。

Aベストアンサー

画像がいまいちよく見えないのですが、納品書の項目は左から、No、商品番号、商品名、単価、数量、金額でいいのでしょうか(名前は多少違っていても意味があっていればもんだいないです)

でしたら、
C1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,2,FALSE))
D1セルに=IF(ISBLANK(B2),"",VLOOKUP(B2,Sheet2!$A$2:$C$200,3,FALSE))
E1セルは空白で
F1セルに=IF(D2="","",D2*E2)
といれて、C1からF1までをコピーしてその下の行にタテに貼り付ければ出来ますよ。
おそらくエラーが出たのは、コピーしたときにVLOOKUP関数の最初のセルの指定がずれてしまっているのでは無いかと思いますよ。     

Qエクセル2007で作成した表(B1:G20)をディスプレー(解像度1920×1200)全体に表示させるマクロは

エクセル2007で作成した表(B1:G20)を現在表示されている液晶ディスプレー(解像度1920×1200)全体に表示させるにはどのようなマクロを作ればいいのでしょうか。教えてください。

Aベストアンサー

B1:G20セル範囲を選択し、
表示タブの「選択範囲にあわせて拡大/縮小」を記録してみては?

Qエクセル2007でプルダウンで選んだものに反応

Excel2007でプルダウンで選んだものに反応して隣のセルが自動入力される方法(エクセル2007)
A1をプルダウンで「猫」「犬」から選べるようにし、「猫」を選んだ場合B1に自動に「111」が、「犬」を選んだ場合B1に自動に「222」と入力されるようにしたいです。
ご教授の程、宜しくお願いします。

Aベストアンサー

VLOOKUP関数での方法です。
(1)別シートに入力文字列と対応コード表を作成。(仮にSheet2のA:B列範囲で順不同)
(2)B1に=IF(COUNTIF(Sheet2!A:A,A1),VLOOKUP(A1,Sheet2!A:B,2FALSE),"")を設定
   入力文字列が存在しない場合は空白としています。

Qエクセルで勤怠管理表で休憩時間を計算させるには

エクセルで、社員の出勤時間の計算をしたいのですが、
休憩時間の控除の計算式がよくわからずに困っています。

パートさんが多いので、労働時間により休憩時間が異なり、下記のようにしています。
4時間30分未満=0分
4時間30分以上=30分
6時間以上=45分
8時間以上=60分

現在使用しているデータの時間表示は、出社「9:00」退社「17:00」延べ時間「8:00」というような、60進法の時分表示です。
これを、10進法表示にはしない方法で計算したいです。

現在の表では、
Aセル=出社時刻、Bセル=退社時刻、Cセル=述べ就労時間、Dセル=休憩時間、Eセル=勤務時間(←述べ就労時間-休憩時間)
にしているのですが、

Dセルの休憩時間が自動計算設定の仕方がわからず、述べ就労時間を見ながら手入力しています。(かなり手間なのと、間違いのもとなので)
これを自動計算できるようにしたいのですが・・

教えて頂けたら大変助かります。
宜しくお願いします。

Aベストアンサー

IF文で
=IF(C2<"4:30"*1,0,IF(C2<"6:00"*1,"0:30"*1,IF(C2<"8:00"*1,"0:45"*1,"1:00"*1)))


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング