プロが教えるわが家の防犯対策術!

EXCELにて月ごとの残業時間の管理表を作成しようと思っています。
A列は残業開始時刻、B列は終了時刻、C列に残業時間を表示させます。
例えばA-1に18:00と入力し、B-1に19:30と入力すると、C-1に「1.30」と60進数で表示されるまではできました。
行き詰っているのは、セルC-32にその月の合計残業時間を60進数で表示したいのですが、10進数表示になってしまいます。現在はただ単にC-32には、=SUM(C1:C31)と入れているためそうなってしまうのは理解できるのですが、60進数で表示されるにはどうしたらいいのでしょうか?

質問内容がわかりにくい場合は補記いたします。

A 回答 (3件)

通常時間の計算はシリアル値で行われており、A1セルに18:00と入力しB1セルに19:30のように入力すれば通常はC1セルに1:30と表示できますね。


残業を計算するのでしたら、そのままで=SUM(C1:C31)で時間が23:45とかで表示されますね。24時間以上になる場合もありますので、通常はセルの表示形式で[h]:mmなどのようにすれば25:35のようにも表示できます。
例えばC32セルに25:35のように表示されているときに時給1000円としてその時の賃金は次のような式を使って計算できます。
=C32*24*1000
この式はパソコンでは時間はシリアル値が基本で、日にちが単位となっているために、日にちに24時間をかけて時間数を計算し、それに時給を掛けています。
ご質問のようにわざわざすべてのデータを60進数に変換しなくとも、時間計算をパソコンはスムーズにこなしてくれます。ご参考までに述べさせていただきました。
    • good
    • 1

>C-1に「1.30」と60進数で表示されるまではできました。


C-1を「1:30」なら単純に表示形式を時刻にすればいいだけです。
こちらの場合はSUMの集計もそのまま時刻表示で行えます。
※24時間を超える場合は、表示形式をユーザー定義にして
[h]:mm
としてください。

1.30の場合はSUMでの集計はできません。整数部分(時間)と少数部分(分)を別計算にする必要があります。
あえてこれをひとつのセルで計算させるとなると下記のような数式になります。
=TEXT(SUMPRODUCT(SUBSTITUTE(TEXT(C1:C31,"0.00"),".",":")*1),"[h].mm")*1
のようになります。
    • good
    • 5

》 …、C-1に「1.30」と60進数で表示されるまではできました



そうですか。
セル C1 の式と書式を示してください。
式は =B1-A1 で、書式は h.mm ですか?


》 セルC-32に…を60進数で表示したいのですが、10進数表示になって
》 しまいます

具体的にどのような「10進数表示」なのかを示してください。
    • good
    • 3

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

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