在EXCEL中使用VB如何对时间进行判断?
Function NO(x, y As Integer)
Dim i As Integer
NO = 0
For i = x To y
If Cells(i, 2) = "NTMT" Or Cells(i, 2) = "NTTV" Or Cells(i, 2) = "NTTR" Or Cells(i, 2) = "NTIN" Or Cells(i, 2) = "NTPC" Or Cells(i, 2) = "NTUP" Or Cells(i, 2) = "NTPH" Then
NO = NO + Cells(i, 8)
End If
End If
Next
End Function
这个是我以前对Normal时间的计算函数(统计从x行到y行的rnomal工作时间).
现在呢,需要做下修改:因为如果在12:00-12:30之间工作的话,工作时间要自动减去0.5小时的吃饭时间.cells(i,6)纪录工作起始时间,cells(i,7)纪录工作结束时间.
所以,我想只要对cells(i,6)<=12:00 and cells(i,7)>=123000,就可以判断出来是否要减去0.5小时.
Function NO(x, y As Integer)
Dim i As Integer
NO = 0
For i = x To y
If Cells(i, 2) = "NTMT" Or Cells(i, 2) = "NTTV" Or Cells(i, 2) = "NTTR" Or Cells(i, 2) = "NTIN" Or Cells(i, 2) = "NTPC" Or Cells(i, 2) = "NTUP" Or Cells(i, 2) = "NTPH" Then
NO = NO + Cells(i, 8)
If Cells(i, 6) <= 120000 And Cells(i, 7) >= 123000 Then
NO = NO - 0.5
End If
End If
Next
End Function
但这个没有效果,不知道那里错了,请教了.
BTW: cells(i,6)和cells(i,7)的时间格式是hhmmss