- ベストアンサー
エクセルの時間の計算
i-katuの回答
- i-katu
- ベストアンサー率0% (0/3)
A1に入社時刻 B1に退社時刻 C1に=ROUNDUP((B1-A1+(A1>B1))*24,0) セルの書式で小数点以下の桁数を[0]する。 で如何ですか
関連するQ&A
- 昨晩、【残業時間計算式を教えて下さい。】の質問を
して締め切ったのですが、一つ言葉が足り無く再度のご教授を頂きたく宜しくお願い致します。 以下の関数ですと、残業時間計が1:30の表示になってしまいます。この表示を1.5に変更したいのですが、宜しくお願い致します。 =INT((D6-18.5/24)*48)/48 =TIME(HOUR(D6),INT(MINUTE(D6)/30)*30,0)-TIME(18,30,0)
- ベストアンサー
- 財務・会計・経理
- エクセル2003で勤務時間計算をしたいのですが、
エクセル2003で勤務時間計算をしたいのですが、 現状は下記のように、H列の計算式が30分単位なのですが、 5分単位で給与計算して、小数点以下を切り捨てするには、 H列の計算式のどこを訂正するとよろしいでしょうか? ■現状(時給880円の場合) C列 D列 E列 F列 H列 始業時刻 終業時刻 休憩時間 実働時間 日給 10:00 17:30 0:45 6:45 5720円 H列の計算式 =IF(OR(C9="",D9=""),"",G9*HOUR(F9)+IF(AND(MINUTE(F9)>=0,MINUTE(F9)<=29),0,IF(AND(MINUTE(F9)>29,MINUTE(F9)<=59),G9/2,G9)))
- ベストアンサー
- オフィス系ソフト
- EXCELで時間計算
タイムカード集計表を作っていますが、残業時間の計算式がうまくいかずに困っています。過去の質問で該当するものがなくて・・・ RAUND(HOUR(A1)+(MINUTE(A1)/60),0)という式を使っていますが、この計算式だと残業時間が24時間を越えるとうまく表示されません。 何かいい解決法はありませんか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 時間給の計算を教えてください
労働時間が110:12で時給が900円の場合 1分単位の計算の方法を教えてください =(HOUR(110:12)*60+MINUTE(110:12))*(900/15)と数式をいれましたが 正しい金額に表示されません。
- 締切済み
- 財務・会計・経理
- 再度です。昨晩、【残業時間計算式を教えて下さい。】
と質問をさせていただき、本日、残業時間表示 1:30 を 1.5 に出来る次の関数をアンサーしていただきました。 初回のアンサー =INT((D6-18.5/24)*48)/48 =TIME(HOUR(D6),INT(MINUTE(D6)/30)*30,0)-TIME(18,30,0) 2回目のアンサー =(TIME(HOUR(D6),INT(MINUTE(D6)/30)*30,0)-TIME(18,30,0) )*24 の式にしてセルの表示形式を標準にします。 上の式を実践で入力した所また不具合が見つかりました。(^^;) ※休日に -19 ※残業無しの日に -1 と表示されてしまいます。 本当に言葉足らずで申し訳ありませんが、上の2点が改良される関数をご存じの方がいらしたら ご指導の程よろしくお願いいたします。(休日や残業0の日の表示は空白を希望します。)
- ベストアンサー
- 財務・会計・経理
- あともうちょっで完成なのですが・・・
うまく動作しないのですが、以下のプログラムのどこが間違っているのでしょうか? たぶん、メイン関数の宣言の部分だと思うのですが・・・。 #include<stdio.h> typedef struct Time{ int hour; int second; int minute; }Time; int main(void){ Time time1,time2,time3; Time time[3]; int i; for(i=0;i<3;i++){ printf("time%dの時間を入力\n",i+1); scanf("%d",time[i].hour); printf("time%dの分を入力\n",i+1) scanf("%d",time[i].minute); printf("time%dの秒を入力\n",i+1); scanf("%d",time[i].second); } time3.second = time1.second + time2.second; if( time3.second >= 60 ){ time3.second=-60; /* time3.second = time3.second - 60; */ time3.minute=1; }else{ time3.minute=0; } time3.minute = time3.minute + time1.minute + time2.minute; if( time3.minute >= 60 ){ time3.minute=-60; /* time3.minute = time3.minute - 60; */ time3.hour=1; }else{ time3.hour=0; } time3.hour= time3.hour+ time1.hour+ time2.hour; return 0; }
- ベストアンサー
- C・C++・C#
- エクセルでの時間の計算
お世話になります。 エクセルで時間の計算をしています。 ある時間、例えば2:00を0:15で割ると、 シリアル値では8.0000...で割り切れます。 小数点以下が時間になるので、時間で表現すると0:00です。 ところが、19:00引く17:00をすると2:00になりますが、 これをイコールで別のセル(例えばA1)に表示させ、 さらに別のセルで、mod(A1,time(0,15,0))にすると割り切れず、0:15となって余りがでます。 仮にA1/time(0,15,0)とすると、シリアル値は8で割り切れます。 なぜでしょうか? やりたいのは、時間計算した結果が15分単位になっているかどうかを判別したのです。 時間計算していない2:00を0:15で割るとシリアル値では少数以下がゼロとなって 割り切れるからOKとなるのに、 時間計算された2:00をtime(0,15,0)で割ると0:15になってしまいます。 これがもし30分単位のtime(0,30,0)だと、時間計算されたセルの2:00でも 少数以下がちゃんとゼロになってくれます。(modを使った余りの計算) また、この他にもなにか15分単位になっているかを判別する方法は有るでしょうか? intをつかって時間-int時間で余りが出ないかで判別等もやってみましたが どうもうまくいきません。 どうかご教授下さい。m(_ _)m
- ベストアンサー
- その他MS Office製品
- エクセルの日時から時間を足したいんですが…
※たとえば A1に 2010/4/1 7:00:00 B1には足したい時間(分) 60 としたときに C1には 2010/4/1 8:00:00 となるようにしたいのです。 さらに先ほどの足し算を連続しておこないたいのです。 C1に =TIME(HOUR(A2),MINUTE(A2)+D2,SECOND(A2)) だけですと時間のみの足し算になってしまい、日にちまで追いかけて表示してくれません。
- ベストアンサー
- オフィス系ソフト
- 分を表す数値(int型)を、String型の”○時間○分”形式に直したい
分(int型)を時間(String型)に直したいのですが↓ 例えば、 ----------------------------- 1. int minute = 160; 2. String time = '2時間40分' ----------------------------- 1のint型変数minuteの値を、 2のString型変数timeのような形式に直す方法を教えて下さい。
- ベストアンサー
- Java
お礼
ありがとうございました。 この方法だとわざわざB1-A1の列を作成しなくても 一度にできるのですね・・・ とても、勉強になりました。