我正在尝试处理一列数据,寻找非空单元格,并使用.offset
函数执行非空值的等式,以引用范围(不同行和列)中的单元格在等式中使用。目标是在那里有一个非空单元格(表示一个班次的持续时间),以格式 - 11/12/2015 6:00:00创建开始时间和结束时间。我的代码目前设计用于为每个班次的开始提供输出,例如列中的值被读取3,12个班次的开始时间为3个小时的工作17/12/2015 18:00:00,结束时间班/开始下班时间(12小时)18/12/2015 6:00:00,轮班结束时间18/12/2015 18:00:00。棘手的部分是换班可能是3小时,然后工作在下一班开始前3小时开始,即18/12/2015凌晨3:00:00。
我当前的代码
Sub ServiceShiftstart()
Dim routineService As Range
Dim ServiceHourStart As Integer
Set routineService = Worksheets("XACT RE").Range("E312:E346")
For Each Cell In routineService
If Cell.Value > 0 Then
ActiveCell.Value = ServiceHourStart
ServiceHourStart = (Cell.Offset(-2, -1).Value) - ((0.5 / 12) * (Cell(0, 0).Value))
Cell.Offset(0, 2).Value = ServiceHourStart
End If
Next
End Sub
提前致谢!