• ベストアンサー

7時間15分を1日と換算する計算について

kagakusukiの回答

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.7

 通常ですと、Excelでシリアル値による時間を扱う際には計算誤差が生じる恐れを考えなくてはなりませんが、本件の場合では、時間休をシリアル値ではなく、時間(hour)単位で扱うため、計算誤差が生じる恐れを考慮しなくても済む分、処理が楽になる面があります。  しかしながら、7時間15分を1日として扱う必要がある事によって、計算誤差の処理など比べ物にならない程に、面倒な事になっています。  今仮に、Aさんの前年度繰越の年次休暇がB2セルに、1回目に摂った時間休の値が(時間[hour]単位で)D2セルに、2回目に摂った時間休の値がE2セルに、3回目に摂った時間休の値がF2セルに、それぞれ入力されているものとします。  同様に、Bさんの前年度繰越の年次休暇がB5セルに、1回目に摂った時間休の値がD5セルに、2回目に摂った時間休の値がE5セルに、3回目に摂った時間休の値がF5セルに、それぞれ入力されていて、 Cさんの前年度繰越の年次休暇がB8セルに、1回目に摂った時間休の値がD8セルに、2回目に摂った時間休の値がE8セルに、3回目に摂った時間休の値がF8セルに、それぞれ入力されているものとします。  そして、時間単位で各時間休の値が入力されているセルの1つ下のセルに、時間休の値を関数を用いて日時分に換算した値を表示させ、 同じく2つ下のセルには休暇日時の残の値を表示させるものとします。(添付画像を参照の事)  まず、D3セルとD4セルの書式設定の表示形式を[ユーザー定義]の [<1]h"時間"mm"分";d"日と"h"時間"mm"分" にして下さい。  次に、D3セルに次の関数を入力して下さい。 =IF(ISNUMBER(D2),D2/24+INT(D2/7.25)*(1-7.25/24),"")  次に、D4セルに次の関数を入力して下さい。 =IF(AND(ISNUMBER(D2),ISNUMBER(1/(IF(ISNUMBER(LEFT($B2,FIND("日",$B2)-1)+0),LEFT($B2,FIND("日",$B2)-1)*7.25,0)+(0&REPLACE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(ASC($B2)," ",),"と",),"間",),1,IF(ISNUMBER(FIND("日",$B2)),FIND("日",$B2),0),)&IF(AND(ISNUMBER(FIND("時間",$B2)),ISERROR(FIND("分",$B2))),"0分",""))*24>=SUM($C2:D2)))), (IF(ISNUMBER(LEFT($B2,FIND("日",$B2)-1)+0),LEFT($B2,FIND("日",$B2)-1)*7.25,0)+(0&REPLACE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(ASC($B2)," ",),"と",),"間",),1,IF(ISNUMBER(FIND("日",$B2)),FIND("日",$B2),0),)&IF(AND(ISNUMBER(FIND("時間",$B2)),ISERROR(FIND("分",$B2))),"0分",""))*24-SUM($C2:D2))/24+INT((IF(ISNUMBER(LEFT($B2,FIND("日",$B2)-1)+0),LEFT($B2,FIND("日",$B2)-1)*7.25,0)+(0&REPLACE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(ASC($B2)," ",),"と",),"間",),1,IF(ISNUMBER(FIND("日",$B2)),FIND("日",$B2),0),)&IF(AND(ISNUMBER(FIND("時間",$B2)),ISERROR(FIND("分",$B2))),"0分",""))*24-SUM($C2:D2))/7.25)*(1-7.25/24),"")  次に、B2~B4のセル範囲内にあるセルを結合して下さい。  次に、D3~D4の範囲をコピーして、E3~F4の範囲に貼り付けて下さい。(必要があれば、貼り付ける範囲を更に右方向に拡大しても構いません)  次に、D2~F4の範囲をコピーして、同じ列の5行目以下に貼り付けて下さい。  以上で準備は完了で、後はB列に前年度繰越の年次休暇を入力してから、D列~F列の2行目、5行目、8行目に、摂った時間休の値を時間(hour)単位で入力しますと、その1つ下のセルに入力した時間休の値を日時分形式に変換した値が表示され、そのまた下のセルに休暇の斬日時が表示されます。  尚、この方法で表示する事の出来る休暇の日数は31日までで、それを超える日数を正しく扱う事は出来ませんので、注意して下さい。

関連するQ&A

  • エクセル 分を換算

    エクセルで分を時間と分に換算する計算式を教えてください。(例えば200分を3:20のように)よろしくお願いします。

  • エクセルでの時間の計算

    エクセルでの1時間25分+5時間57分と分を時間に繰り越す場合の自動計算の方法があるのでしょうか?調べてみたのですが、別々のセルに時間・分を入れて計算する方法はでてるのですが、一つのセルに1:25と5:57をいれて7:22と表示されるのは不可能なんでしょうか?教えて下さい。

  • 0.00分⇒0分0秒に換算したい。

    例)1.32分を1分○秒に換算したいのですが、計算方法が分かりません。 エクセルにデータ収集していきたいので、 計算式を教えて頂けると助かります。

  • エクセル2000での時間換算

    Excel2000使用初心者です。過去の検索もしたのですが、要領を得なかったのでご質問致します。 A1セルに時間を数値入力します。例えば「25」(時間) A2セルに分間を数値入力します。例えば「90」(分間) A3セルに秒間を数値入力します。例えば「130」(秒間) A1からA3の時間を合計して換算された答えを、以下のセルにそれぞれ数値で.. B1に「26.32.10」(26時間32分10秒) B2に「1592.10」(1592分間10秒) B3に「95530」(95530秒間) と求めたいのですけれど、どのような関数式を作ればよいかご教示下さい。 よろしくお願いします。

  • エクセルでの計算式もしくはシートの作り方 1日を7時間45分に

    エクセルで年次有給休暇簿を作ろうとしています。  作り方を教えてください 年休は時間単位で修得できます。 しかし,今年から勤務時間が8時間から7時間45分に変更になり累計の計算が煩雑になりました。  今までは年休を1時間取る時は1/8と書いて それを 累計していけば簡単にできました。 例えば 4/8の次に6/8をとると1と2/8 次に7/8をとると2と1/8と簡単でした。 今年度からは 4時間とって 次に5時間取ると合計9時間となり, 勤務時間が7時間45分なので 年休の累計は1日と1時間15分となると思います。  何かいい計算式がありませんか? (時間を分になおしたり いろいろしましたが,分かりませんでした。)

  • 日報の時間計算を行う関数について

    勤務時間を管理の日報を作成しています。以下の条件をつけて出勤時間と退社時間を記入するだけで1日の総勤務時間を表示してくれる関数をご教示お願いします。 ・9:00出勤で18:00定時退社で15分単位で表示 ・セル(開始)は9:00、(終了)に18:00以降の時間を手入力 ・セル(工数)に関数で総勤務時間を計算 ・9:00から18:00までに1時間15分の休憩をとるため、自動的に差し引いて計算 ・残業は18:15からカウントされるため、18:30以降残業して退社した場合は15分差し引いて計算 ・残業最終時間0:00までとして計算 ・セル(開始)、(終了)に9:00~0:00の15分単位の時間以外を入力はない前提とします ・遅刻、早退による変則時間の入力はない前提とします 【例】 (開始)9:00、(終了)18:00の時は(工数)に7.75 (開始)9:00、(終了)18:15の時は(工数)に7.75 (開始)9:00、(終了)18:30の時は(工数)に8 (開始)9:00、(終了)0:00の時は(工数)に13.5 よろしくお願いします。

  • 年次休暇の取得とのこりの自動計算について

     恐れ入ります。先日年次休暇の計算方法について相談させていただいた者です。  ご回答をいただき、それをヒントに自分で考えられるかと思ったのですが、難しいので申し訳ありませんが、どうぞよろしくお願いします。  添付画像のようなレイアウトを考えています。 ・あらかじめ去年からの繰り越しを入力しておきます。  日、半日、時間、分という単位です。 ・黄色のセルに、現在の取得年休を入れます。 ・自動的に現在の積算年休が表示され、差し引きがわかるようにしたいのです。  また、次の約束があります。 ・1日は7時間45分です。(先日は7時間15分で尋ねましたが、職種により違い、今回は7時間45分をもって1日とする職種の分です) ・半日単位での取得はできますが、半日は時間に換算せず、0.5日という表記にします。  最終的には「15.5日と3時間15分」といった残数表記にします。 ・半日を時分換算しないので、繰り下がりは「日」から「7時間45分」をとってきます。  レイアウトは多少変わっても構わないので、どうぞよろしくお願いします。

  • エクセル2003で時間の計算について

    エクセルで時間の計算を行ってますが詰まったので教えてください。 その1 計算によってもとめた時間の'分の一の位と"秒を取り出して、かつ秒を分単位で表示したいのです。 その数値はそのあとの計算で10進法で計算します。    A 10 19:08:45 11 21:08:01 12 -1:59:16 13 現在このようになってます。 A12のセルは[A10-A11]です。 A12の計算結果である-1:59:16の分の一の位、つまり9分16秒を分に換算して9.27(9.266...)というかたちでA13のセルに結果を出したいのです。 符号はabs関数で無くす予定です。 その2 さらにこの次の計算で特定のセル(たとえばA10)の'分が30分を超える場合は計算結果の符合を反転するようにしたいです。 わかる方がいらっしゃいましたらよろしくお願いします。

  • 時間を日にできる関数

     休暇の時間を計算する場合、例えば、30日と90時間は時間を8時間で1日に換算すると、41日と2時間になります。エクセルでそのように変換できる関数はないんでしょうか?

  •  エクセルでの経過時間の分計算。

     エクセルでの経過時間の分計算。  よろしくお願いします。セル内に”0900”と入力すれば、”=NOW()”関数式で表示されている現在時間からの経過した分を表示できないか考えています。何か良い方法が分かる方がいれば、よろしくお願いします。 例)      A        B        C 1  10:05:39    0900        65 2 3 A1"=NOW()" B1"0900と入力" C1"経過分時間65を表示"