• ベストアンサー

エクセルの表作成(関数)について

時間計算の表を作成しています。 添付画像のように、 開始時間、終了時間を入力し、時間数をA~Dに振り分けます。 通常は、時間数Aに表示されるようにして、種別に1を入力すると時間数Bに、2を入力すると時間数Cに移るようにしたいのですが、どうしたらいいのでしょうか。 よろしくお願いいたします。

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

>どうしたらいいのでしょうか。 D3セルに次の式を入力し、そのセルをD列3行からG列n行までコピーします。 但し、D列2行からG列2行までは半角のAからDまでが入っていることとします。 =IF($H3=CODE(D$2)-CODE("A"),IF($B3<$C3,$C3-$B3,1+$C3-$B3),"") 尚、7行目の開始より終了の方が小さいときは開始の翌日に終了と考えて1日加算します。 あなたが提示された表は計算違いがあるものと判断しました。

morito_55
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! D~G列に表示されている「時間」が単に 終了時刻-開始時刻 でないのがちょっと気にかかりますが、 (おそらく休憩時間等の引き算が必要になるのではないかと思います) とりあえず「終了時刻」から「開始時刻」を引いた「時間」を表示するだけにしています。 D3セルの表示形式をユーザー定義から [h]:mm として =IF(COUNTBLANK($A3:$C3),"",IF(COLUMN(A1)-1=$H3,$C3-$B3,"")) という数式を入れ、列・行方向にオートフィルでコピーしてみてください。 ※ 休憩時間等マイナスしなければならない場合は IF関数の「TRUE」のところで調整します。 まずはこの程度で・・・m(_ _)m

morito_55
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

D3に、 =IF(H3<1,C3-B3,"") E3に、 =IF(H3=1,C3-B3,"") F3に、 =IF(H3=2,C3-B3,"") G3に、 =IF(H3=3,C3-B3,"") それぞれ、必要なだけ下へコピー。 下の2行が、単純に「終了-開始」ではないみたいなので、少し気になりますが・・・

morito_55
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルの表作成(関数)について2

    先ほども、表作成について質問させていただき、大変ありがとうございました。 再度、エクセルにて、添付画像のような表を作りたいと思っています。 A列に日付、B列に時間数1、C列に時間数2、D列に累計です。 D列に累計を出したいのですが、B列とC列のどちらかか、片方に時間数を入力した時のみ、D列に累計が表示されるにはどうしたら良いのでしょうか。 時間数の入力のない欄は、空白となります。 よろしくお願いします。

  • エクセルでの表作成(関数)について

    エクセルにて、添付画像のような表を作りたいと思っています。 A列に日付、B列に時間数、C列に累計です。 C列に累計を出したいのですが、B列に時間数を入力した時のみ、C列に累計が表示されるにはどうしたら良いのでしょうか。 よろしくお願いします。

  • エクセル 関数について

    初心者です。 表を作成し、セルの範囲内に数を入力されていれば計算するような数式を作りたいのですが、どうやって作ればいいのか分かりません。教えてください。 例  A  B  C  D  E 1  10       60% 数式(A・B・C)×D  2    20    60%   〃 3       30  60%   〃   こんな感じです

  • excel 関数について

    「給料計算をしたいと考えている B2に就業開始時間として数字が記載されている。 C2に休憩開始時間として数字が記載されている。 D2に休憩終了時間として数字が記載されている。 E2に就業終了時間として数字が記載されている。 記載されている数字は、 「1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24」のうちどれか。小数点にも対応してほしい。 ・例1 B2に「7」と入力されていたら就業開始時間は「7:00」ということ。C2に「10」と入力されていたら休憩開始時間は「10:00」ということ。D2に「11」と入力されていたら休憩終了時間は「11:00」ということ。E2に「16」と入力されていたら就業終了時間は「16:00」ということ。 ・例2 B2に「7.5」と入力されていたら就業開始時間は「7:30」ということ。C2に「10.5」と入力されていたら休憩開始時間は「10:30」ということ。D2に「11.5」と入力されていたら休憩終了時間は「11:30」ということ。E2に「16.5」と入力されていたら就業終了時間は「16:30」ということ。 時給は、以下のようになっている。 11時から14時の間だけ1000円。その他の時間は950円。 C2の時間からD2の時間は休憩時間なのでその間の休憩は0円とする。 上記の計算をした上でF2に解を出力。

  • エクセルの関数、計算式について

    時間計算で、例えばA1に開始時間8:00、B1に終了時間17:00と入力し、C1に作業時間を表示させる表を作ります。そのまま計算すると、C1セルには9:00と表示されますが、これを8:00という表示にさせるには、どういった関数もしくは計算式にすればいいでしょうか?8時間以下であれば、そのままの時間を表示させたいと思っています。作業時間を表示させるところは、C1だけでなくC1以降も同じ計算式を入れてこの表を作りたいと思っています。ご教示いただければ幸いです。よろしくお願いします。

  • excelの勤務表の入力

    officexpで、エクセルを使用しています。 勤務表なのですが、 A列に、開始時間「7:00」 B列に、終了時間「21:00」と、入力 時給の関係で C列には、8:00-20:00 までの合計働いた時間数 D列には、20:00-08:00までの合計働いた時間数をだしたい、今回の場合は、C列に12時間 D列に2時間と表示させたい、IF関数とかつかったけど、うまくいきません。 いい方法は、ないでしょうか?お教え下さい。

  • エクセルで時間表示させる関数(勤務時間)

    勤務表管理のため、表を作成しています。 通常勤務は9:00-17:30で残業時間が15分の休憩を挟んだ後17:45-21:30までです(その後深夜残業がありますがここでは割愛します) C22に仕事開始時間、D22に仕事終了時間を入れています。 例えば9:00-22:00で仕事したとします。そして、あるセルに、残業時間開始時間、終了時間を表示させたいのですが、残業時間開始を =IF(D22> "17:30","17:45","") と入れたのですが空白で返されてしまいます。">"を"<"にするとなぜか17:45が表示されます。 終了時間は、IF(D22>="21:30",MIN(D22,"21:30"),D22) だと空白で返されます。逆にするとMIN(D22,"21:30")が返されて例えばD22に17:30とか入れると21:30と返されてしまいます。 時間計算の場合、何か特殊な設定をしないと逆になってしまうのでしょうか?

  • 勤怠集計表の計算式について教えて頂きたいのですが、 

    勤怠集計表の計算式について教えて頂きたいのですが、  1日の勤務時間が7時間30分の勤怠集計表を作成しています。休憩時間は1時間です。    A        B      C    D   日にち  開始時間 終了時間 時間計 例  7/1   9:00 17:30 7:30 計へは、1時間休憩時間を引いた計算式の IF(C2<=$C$1,C2-B2,C2-B2-TIME(1,0,0)) ※C1へ12:00と入力 この場合、開始時間が13時以降の時も1時間の休憩を取ってしまいます。 13時以降の開始の時、休憩時間を挟まない計算式を教えて下さい。

  • Excelで勤務時間の管理表を作成したい

    Excel初心者です。 Excelに詳しい方、どうかご教示いただきたく思います。 現在、タイムカードを元に、Excelで勤務時間の管理をしようとしていますが、 思うように出来ず、大変困っております。 作成したい勤務管理表としては、添付の画像のような形式になるのですが、 出社時刻も退社時刻も、昼休憩の開始時間や昼休憩の時間の長さも 人によってまちまちで特殊な働き方のため、管理が難しいです。 そのため、添付画像のように、 タイムカードの出社時刻と退社時刻を記入するだけではなく、 実際に業務を行った時間の内訳がわかるよう、 午前と午後の開始時間と終了時間の枠を設け(E列~J列)、 それを元に勤務時間合計(K列)を出すようにしています。 そこで、勤務が午前~午後にまたがり昼休憩を挟む場合は、 午前の終了時間(G列)と午後の開始時間(H列)は手入力をするようにし、 それ以外は、タイムカードの出社時刻(C列)と退社時刻(D列)が、 午前の開始(E列)および午後の終了(J列)の欄に反映されるようにしたいです。 なおその際に、以下の4点を考慮して作成したいと考えています。 (1)出社時刻(業務開始時間)は30分単位で切り上げる。 (2)退社時刻(業務終了時間)は30分単位で切り下げる。 (3)タイムカードの出社時刻欄(C列)や退社時刻欄(D列)に何も入力されていない場合は、  午前・午後の開始欄・終了欄(E列~J列)は空欄にさせる。  同様に、午前だけの勤務時は、午後の開始欄・終了欄(H列~J列)を空欄、  午後だけの勤務時は、午前の開始欄・終了欄(E列~G列)を空欄にさせる。 (4)タイムカードの出社時刻(C列)に合せて、その時刻が午前ならば午前の開始欄(E列)に、  午後ならば午後の開始欄(H列)に、(1)で丸めた時間を表示させる。  同様に、退社時刻(D列)に合わせて、その時刻が午前ならば午前の終了欄(G列)に、  午後ならば午後の終了欄(J列)に、(2)で丸めた時間を表示させる。 (※但し、添付画像の6行目の例の様に、午前だけの勤務の際に、終了時間が12時を過ぎていた場合は、午前の終了欄(G列)に表示させる。) 現在は勤務時間合計(K列)だけ計算式を入れており、それ以外は全て手入力のため、 手間がかかるだけでなく、入力ミス等にも繋がるため、 出来るだけミスの少ない管理表を作成したいと思っています。 条件の多い質問で大変恐縮ではありますが、 なるべく簡単な方法を教えていただけると大変助かります。 どうぞ宜しくお願い致します。

  • Excel 素人です。

    勤怠表を作成しているのですが、さっぱり分かりません。 A1 B1 C1 D1 E1 開始   終了  休憩  実働時間 平均 8:30 19:30 1:20 9:40 9:40 8:30 18:00 1:20 8:10 8:55 8:30 ######### =B1-A1-C1でD1に実働を出す際、B1-A1-C1が全て入力後 初めて、D1に実働時間が出るようにしたいのです。 現在上の表みたいに#が出てしまいます、 本当に素人です、出来るだけ簡単なやり方を教えてください。

専門家に質問してみよう