我的数据库无法跟踪工作时间。我可以在hh:mm中输入内容。我苦苦挣扎的一点是,我无法获得所有小时数的适当总和,以便计算员工是否满足了每个月的工作量。我唯一接近总和的就是一个总区域,该区域完美地显示了23:59以下的所有内容,但在经过24小时标记后立即从00:00开始。
数据库包含多个表,其中一个表包含具有每日总和的所有记录。另一个包含一年中一个月的12条记录。所以看起来像这样:
一月160:50 二月158:40 等
每个月的总数是使用员工记录的日期和每日总和来计算的,而所需的工作量则要减去所计算的月总数。结果显示员工有多少加班/减时。
我也很难输入每月所需的工作量,为hh:mm,只要我经过24小时标记,就会迫使我将列转换为文本。
我已经非常绝望了,因为我暂时陷入了这个问题。我(相信)我检查了有关此问题的所有Google结果,但没有取得任何进展。在Access方面,我是一个绝对的新手,如果有人有时间帮助我解决这个问题,我将不胜感激。
-Google -总字段
答案 0 :(得分:0)
求和字段可能工作正常。这里的问题是,对于时间字段,Access永远不会显示超过24小时,而是将其移动到几天。
要显示总计经过的小时数,可以使用DateDiff
:
DateDiff("h", 0, Sum(TimeField))
如果要附加分钟,可以使用Format
:
DateDiff("h", 0, Sum(TimeField)) & ":" & Format(Sum(TimeField), "nn")
请注意,这会将字段转换为字符串。您不能将时间字段设置为大于24小时,Access则不支持该时间字段,您必须将其转换为天数+时间(分数或字符串)。
这假设您在时间字段中仅正确存储了时间。如果其中也有日期,则可以使用TimeField - Int(TimeField)