我试图在一周内找到每位员工的总生产力。生产时间以excel方式跟踪。但是,跟踪时间采用数字格式。我需要将数字转换为时间格式。每个工作日有8小时的生产时间。
目前,我设计了一个用于以小时和分钟格式获取时间的宏,但是,在某个点之后,该值是不准确的。请找到以下代码。
Sub test
Dim wks As Worksheet
Dim TemUtl As Worksheet
Set wks = Sheets("Working")
Set TemUtl = Sheets("Team Utilisation")
Dim TMMBRTimR As Range
Dim TMMBRTimC As Range
Set TMMBRTimR = TemUtl.Range("A3:A32")
Dim TiMLstrw As Long
TiMLstrw = TemUtl.Cells(Rows.Count, 1).End(xlUp).Row
For Each TMMBRTimC In TMMBRTimR.Rows
TMMBRTimC.Offset(0, 11).Value =
Format(Application.WorksheetFunction.SumIfs(wks.Range("G:G"),
wks.Range("C:C"), _
Trim("8"), wks.Range("B:B"), TMMBRTimC, wks.Range("H:H"), "<>Process
Training") / 1440, "HH:MM")
Next TMMBRTimC
End sub
我在Excel文件中有两个标签,一个是Working
,另一个是Team Utilisation
。
效率的总和来自Working
标签,希望sumifs
公式可以理解。
答案 0 :(得分:1)
我想你想要:
Format({calc here}, "[h]:mm")
允许时间> 24小时
编辑:似乎在VBA中不像在工作表上那样工作,所以试试Application.Text({calc here}, "[h]:mm")