• ベストアンサー

エクセルの勤務表計算の関数を教えて下さい。

会社の勤務表の入力を改良したいのですが、うまくいきません。 詳しい方教えていただけると助かります。宜敷願いします。 まず、勤務時間のトータル時間数が6時間以下の時は休憩は0時間。 17:30迄なら1:00。 17:31~18:00迄は1時間+17:30を超過した分を1分単位でプラスする。 例えば、17:45なら1:15。 18:00を過ぎたら1:30という感じに休憩の欄に表示がしたいです。 B1に出勤時間、C1に退勤時間、D1に休憩時間という入力表になっています。 宜しくお願いします。

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

  • ベストアンサー
  • minosennin
  • ベストアンサー率71% (1366/1910)
回答No.3

一例です。 D1に =IF(B1="",0,IF(C1-B1<=6/24,0,IF(C1<=TIMEVALUE("17:30"),"1:00",IF(C1<=TIMEVALUE("18:00"),"1:00"+C1-TIMEVALUE("17:30"),"1:30")))) なお、この式はこの画面からexcelへコピペできます。

mamesibarin
質問者

お礼

今日、早速勤務表に関数を入力してみました。 私が、表示したかった通りの表示が出来ました。本当にありかどうございました。とても助かりました。仕事を引き継いだばかりで、勤務表が全てベタ打ちなのをなんとかしようと思ったのですが、自分ではうまく出来なくて困っていました。ありがとうございます。

その他の回答 (3)

  • bluelake
  • ベストアンサー率32% (64/197)
回答No.4

改良したいのなら、今の状態と問題をはっきりさせること、ルールを整理することです。 >勤務時間のトータル時間数が6時間以下の時は休憩は0時間 >17:31~18:00迄は1時間+17:30を超過した分を1分単位でプラスする。 >例えば、17:45なら1:15。 >18:00を過ぎたら1:30という感じに休憩の欄に表示がしたいです。 休憩時間には、昼休憩と定時後休憩があり、 在社時間(退社時刻-出社時刻)が7時間時間以上の人には昼休憩が1時間 定時が17時30分で、退社時刻が18時過ぎの人には、定時後休憩が30分ということでしょうか? 複雑な計算を関数で処理しようとすると、とても複雑な計算になってしまいます。 中間のセルを設けて頭で理解できるようにしたほうがよいと思います。 まずは、昼休憩と定時後休憩を分けて計算したらどうでしょうか? 複雑になりますが、後で統合することも可能です。 たとえば、昼休憩は、 =IF((C1-B1)<(6+1)/24,0,1/24) ※式の意味は、勤務時間の6時間に休憩の1時間を足した7時間に足りなければ昼休憩なし、足りたら1時間 定時後休憩は、 =IF(C1>18/24,0.5/24,IF(C1<17.5/24,0,(C1-17.5/24))) ※式の意味は、18:00を過ぎたら30分、17:30前なら0、その間は退社時刻と17:30分の差

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.2

差引時間の計算は、同一日付内なら単に大きい時刻から小さい時刻を引算するだけ。 > 17:30迄なら1:00。 もしも17:30が勤務時間を言っているなら、 日付+時刻で入力して、大きい日時から小さい日時を引算する。 このとき、24時間以上の勤務時間の可能性があるなら セルの書式設定で”[h]:mm”と、時間(Hour)の部分をカギ付カッコで囲んで下さい。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

> うまくいきません。 どう「うまく」いかない? > 17:30迄なら1:00。 勤務時間が?終業時刻とは思うが。 始業時刻に関して何も触れられて無いが、 11:30~17:30の勤務だったら、付与されるのは0時間?それとも1時間? 条件をもっときっちり整理したほうが良いですよ。 時間と時刻も使いわけしてね。

関連するQ&A

  • エクセルで勤務表を作っています。

    エクセルで勤務表を作っています。 決まった曜日の決まった時間に出勤&退勤するバイトなので、関数を使って簡単に入力したいと思っています。(月木土日曜日の、17時から22時までの勤務) 項目が「日付、曜日、出勤時刻、退勤時刻、休憩時間、実働時間」とあり、曜日を参照して自動的に 出勤日に17:00、退勤時刻に22:00。休憩時間に0:15と入力するには、どうしたらいいのでしょうか? 一日(たとえば月曜日のみ)などの時は、if関数を使って入力できるのですが、1週間に4日分の入力をする関数の使い方がよくわかりません。andやor関数を使ってみましたが、うまくできませんでした。 わかる方は、是非教えてください。よろしくお願いします。

  • IF関数を使った勤務時間表

    勤務時間表をエクセルで作成しました。 出勤時間 退勤時間 休憩時間 と入力し退勤時間-出勤時間-休憩時間で勤務時間を求めます。それぞれのセルに時間を入力して勤務時間を求めていましたが会社の管理により休憩時間がそれぞれの時間帯に定められています。そこで出勤時間と退勤時間だけの入力で、休憩時間の条件を定義すれば休憩時間は入力することなく求められるかと思いましたがIF関数を使うと複雑で長くなりうまくできませんでした。”この関数に関する引数が多い”とのエラーメッセージが出てしまいます。VLOOKも考えてみましたがもの凄く長い条件になりそうで諦めました。休憩時間は以下の通りになります。 10:00~10:10 12:00~12:40 15:00~15:10 ちなみに私の通常勤務は8:30~16:30となります。 早退や遅刻などはたまになので難しい関数使うよりも 簡単に引くべき休憩時間は分かるんですが…。今後の勉強のためにもいい方法があればと思います。よろしくお願いします。

  • Excelで勤務表を作りたいのですが

    Excelで勤務表を作りたいのですが、なかなか関数がうまく使えません。 時間計算をご存知の方、教えて下さい。 入力列 A:出勤時刻 B:退勤時刻 C:勤務開始時間 *始業9:00のため、9時より以前の出勤時刻は9:00、9:00以降の出勤はその時刻を表示する。 D:休憩時間 E:実働時間(始:C/終:B/マイナス:D) F:時間内勤務(8時間まで) G:時間外勤務(8時間を超過したところから・22時迄) H:深夜残業(22時以降の勤務時間) このような説明でお分かり頂けるでしょうか。 よろしくお願いします。

  • EXCEL2000で勤務表

    EXCEL2000で勤務表の作成を依頼されました。 関数で計算をしようとしたのですが うまくいかない点があるので 皆様のお知恵をお貸しください 条件は 1.出勤・退勤時間を入力したら休憩時間と勤務時間を求める 2.休憩時間は12:00~13:00と   22:00~23:00の2回(固定) 3.早出,午前半休,午後半休あり 4.時間で1時間単位で○:30という時間はない   (丸め込んだ時間を入力する) (求めたい時間) A列 |B列 | C列| D列| 出勤 |退勤 | 休憩| 勤務|  8:00|17:00| 1 |  8|定時  8:00|23:00| 2 | 13|残業  8:00|12:00| 0 |  4|午後半休  8:00|13:00| 1 |  4|午後半休  7:00|12:00| 0 |  5|早出 13:00|18:00| 0 |  5|午前半休 計算式としては 勤務時間=退勤時間-出勤時間-休憩時間なのですが 休憩時間を求める式がよくわかりません。 情報が不足している場合は補足いたしますので ご指摘ください。 環境OS:WIN98 Office2000 SR2 よろしくお願いいたします。

  • エクセル 退勤表

    こんばんは。 行き詰まりを感じましたのでどうか教えてください。 只今、エクセルで出退勤表を作成しています。 その際に実労働時間を求めたいのですが、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) と考えましたが計算ができませんでした。 まったく違うのかもしれません。 訂正もしくは根本的に考えが違うのか、教えてください。 宜しく御願いします。

  • EXCELで出退勤務シフト表を作っているのですが、、、

    (^^;)行き詰ってしまい、困り果ててます。 EXCELで出退勤務シフト表を作っているのですが、、、 日付と個人名を選択し、出勤時間・退勤時間・休憩時間を入力すると右側の表に反映するように設定してますが、上手くいきません。 その右側の表のAさんの出勤時間のセルの式ですが、 =IF($M$70=$D36,VLOOKUP$A4,$M$71:$V$113,2,FALSE)," ") =if(日付が一致したら、個人名と出退勤時間と休憩時間を入力した一覧から、2行目の出勤時間の行を入力、それ以外は、スペースを入力) というつもりで組みました。 表示はされますが、 ・日付を変えると消えてしまう!という問題 退勤時間の方も ・式を退勤時間の3行目が表示されないという問題 勤務時間は更に、 ・退勤時間-出勤時間=勤務時間が#####となってしまうという問題 となっていて、どうしたらいいのか行き詰っています。 良い方法がありましたら、是非、教えてください。 本当に本当にお願いします。 また、こういう問題を実際に教えて頂ける教室や 場所などご存知でしたら、是非、教えてください。 どうぞよろしくお願いします。

  • ややこしいエクセル表計算・・・

    ややこしいと思うのは出来ない私だけかも知れませんが、御指導ください。 労働時間の計算表を作りました。 横列が日付で縦列が上から出勤時刻、退勤時刻、休憩時間、労働時間、累計労働時間、残りの労働時間とし、任意のセルに目標労働時間を入力し退勤-出勤-休憩を一日の労働時間とし累計と目標時間-累計労働時間で残りの労働時間まで計算できる表を作りました。 お尋ねしたい点は、その下に残りの労働時間に対する一日当たりの労働時間を算出したいのです。 一番上の出勤時間のところに休み(予め一か月分は決まっています)の日は『00:00』を入力します。 残りの労働時間割ることの『00:00』が入力されていない空白のセルの数だけって数式作れますか? 仕事で使いたいもので、是非御指導ください。

  • エクセルで勤務表を作りたいのですが・・・【再】

    やはり、わからなくなってきたので、再度質問させていただきます。 使用ソフトEXCEL Ver2000 WinXP使用 今、EXCELにて勤務管理表を作成しているのですが、 関数を挿入する際にどの関数を使用すればいいのかいまいちわからないのでご教授いただけますでしょうか? まず、例として、セル列が A⇒日 B⇒曜日 C⇒区分 D⇒出社時間(1つのセルの中に「10:00」というように入力する) E⇒退社時間(              〃               ) F⇒休憩(15分単位で入力 例:1時間休憩なら⇒60) G~J⇒時間内(セルごとに結合させて使用)通常8時間以内であればこのセルに時間数を表示(例:6時間半勤務⇒6.5) K⇒時間外 8時間以上の勤務時間はこのセルに入力 (例:2時間45分残業⇒2.75) 以上のように入力を進めていきたいのですが、 まず、出社時間・退社時間は手入力となり、出社時間等を入力した際に自動入力で【休憩・時間内・時間外】を計算されるようにしたいのです。(休憩は60分と自動入力できれば嬉しいのですが・・・) 普通の計算式なら入れられそうにも感じたのですが、『休憩』は60進法『時間内・外』は10進法と少々ややこしいので、 わからなくなってしまいました。(こういう進法は会社でこのように入力するように言われました) 他の方の質問・回答など参考にさせていただいたのですが、A列に1:30と入力してB列に1.5と表示させるようにする関数の使い方は見かけたのですが、直接対象セルに表示させる方法を知りたいです。 以上の条件で、どの関数を使用すればよろしいでしょうか? その際の書式設定で変更しなければいけない点もございましたら合わせて教えていただけましたら幸いです。 =追記= この勤務表なのですが、私個人の勤務表になります。 派遣会社から毎月勤務管理シートを送付するように言われていて、エクセルのデータとしていただいていたものなのですが、その中には関数は何も入っていなかったので、作りやすいように関数を入れようと思い作成し始めました。(会社の許可済み) ・退勤時間も24時以降になることはありませんし、休憩なしということもありません。 よろしくお願いします(/_<。)

  • フレックス勤務制における時間計算について

    私の勤務する会社はフレックス制ですが、時間計算が15分単位です。出勤打刻が 8:16、退勤打刻が 16:59の場合、8:30~16:45 しか勤務した計算になりません。15分単位で、出勤時間・退勤時間を切り捨てるのは違法ではないのでしょうか?

  • EXCEL 時間計算について

    出勤から退勤までの時間を計算したいです。しかし、お昼休憩の1時間は省きます。また、算出した数字は、15分単位で表示し、14分は00分で表示します。C列にいれる式はどうなりますでしょうか?  A列   B列   C列 (出勤)(退勤)(勤務時間)  8:45  16:32  7:45

専門家に質問してみよう