プロが教える店舗&オフィスのセキュリティ対策術

Accessの勉強を始めたばかりです。
Accessで残業時間の集計をするシステムを作ろうと思っています。
テーブルで残業時間の累計書き込むフィールドを日付/時刻型にすると24時間以上はエラーになってしまいます。
どのようにしたらよいでしょうか。
よろしくお願いします。

A 回答 (4件)

月または年の残業時間を累積した値を書き込むフィールドという解釈で宜しいでしょうか?


であれば、残業時間が24時間以上になることもあるので日付/時刻型ではなく数値型にしたほうが良いです。この時、分(mm)を小数点で扱えるようフィールドのプロパティを調整しましょう。
    • good
    • 1

※日々の残業時間が24時間未満(24時間丁度を含めない)を前提に話をすすめます。



1.日々の残業時間を入力するフィールドは日付時間(DATE)型
2.このフィールド名を仮に「残業時間」とすると、集計用のSELECT文は次の通りです。
  SELECT sum(残業時間)*24 ~ FROM テーブル名 ~
3.上記2で *24 がポイントです。

こうすることにより、
 月の残業時間が14時間45分なら 14.75 となります。
 これを 14時間45分と表示したいのであれば別途工夫が必要です。

なぜ24を掛けているかは考えてみてね。
・・・ヒント:日付時間型と倍精度実数型
    • good
    • 1

通常は帰社時間を18:30とか入力して残業時間を数値で求めます。

上記の場合5時までとすれば1.5時間を時間型ではなく数値で1.5と求めそれを累計します。

残業代を演算するときも30分より0.5で計算する方が良いのではないでしょうか。
    • good
    • 0

数値型で、分単位(必要ならば秒単位)で記録してはいかがですか?

    • good
    • 0

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

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


このQ&Aを見た人がよく見るQ&A